Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!Doctype html>
- <html><head>
- <title>Waked - The Last bastion of decentralized web</title>
- <meta charset="utf-8">
- <meta http-equiv="Content-type" content="text/html; charset=utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <style>
- #content button{
- display:block;
- float:top;
- margin-top:4pt;
- margin-left:auto;
- margin-right:auto;
- width:90%;
- text-align:left;
- }
- </style>
- </head>
- <body><br>Waked - The Last bastion of decentralized web.<br>
- <div id="content"></div>
- <div id="viewbox">
- <iframe style="display:none;width:90%;height:90%;" sandbox="allow-scripts"></iframe>
- </div>
- <script type="text/javascript">
- //Waked - The Last bastion of decentralized web
- /*use cors proxies to upload user content to various temporary file sharing services, like uploadpie, then archive the uploads to archive.org, use pastebins like this one and justpaste.it to help index the user uploads
- Use example.com archives to find indexes:
- for example I archived the url: "https://web.archive.org/save/https://www.example.com?waked_iurl=https://athleticgreatscientists--five-nine.repl.co/index.php/itall_ind.html&of=pastebin.com&scope=partial,incomplete&title=partial index of pastebin.com pastes saved to the wayback machine"
- to make my partial index of pastebin.com pastes that are saved to the wayback machine accessible to the waked system.
- The potential of this is so enormous, if anyone wants to save anything they've posted on any social media to the waked system, all it has to do is archive https://www.example.com?waked_url=[url of post]&type=postsave
- Also, we can add &title= and &tags= parameters to the query string and we can add even more parameter to represent data if we want to, I've finally figured out how to use the Wayback Machine as an only-writeable-once SQL server.
- Add the &of= parameter for what indexes are an index of.
- But what can I do to prevent people from spamming this system with junk data that aren't actual posts?
- (by spam I don't mean garbage social media posts I mean data that is meant to flood the waked system and slow it down like weird type of denial of service attack).
- Because the wayback machine is inherently slow, it is strongly advised to make components of the waked system upload content to other servers like this one, streamable.com, ibb.co, and similar sites and then archive indexes of multiple uploads.
- */
- self.corsp_={"keys":["Service","url_prefix","cors_url_modify","SSL","status","Response Type","Allowed methods","Allowed headers","Exposed headers","Follow redirect","Streamable","WebSocket","Upload limit","Download limit","Country code","Comments"],
- "values":[
- ["CORS bridged","https://cors.bridged.cc/","none",true,"Mirrored",["raw"],"*","All but expect Forbidden headers","?","?","?","?","16mb/request","?","US (CA)","https://medium.com/bridgedxyz/cors-anywhere-for-everyone-free-reliable-cors-proxy-service-73507192714e Blog for docs & Testing"],
- /*
- //don't abuse service
- ["cors-anywhere","https://cors-anywhere.herokuapp.com/","none",true,"Mirrored",["raw"],"*","*","*","Up to 5x","?","?","?","?","US","Require Origin header"],
- ["<a href=\"https://github.com/Rob--W/cors-anywhere\">cors-anywhere @ glitch</a>","https://cors-anywhere.herokuapp.com/","none",true,"Mirrored",["raw"],"?","?","?","?","?","?","?","?","?","<a href=\"https://glitch.com/~cors-anywhere\" rel=\"nofollow\">source</a>"],
- */
- ["thingproxy","https://thingproxy.freeboard.io/fetch/","none",true,"?",["?"],"*","?","?","?","?","?","100kb","100kb","US","Max 10 req/sec"],
- ["Whatever Origin",/*www.whateverorigin.org*/ "https://whatever-origin.herokuapp.com/get?url=","encodeURIComponent",false,false,["jsonp"],"GET","None","None","?",false,false,"?","?","US",""],
- ["Go Between","?isdead?","?",true,"?",["?"],"?","?","?","?","?","?","?","?","?",""],
- ["goxcors","https://goxcors.appspot.com/","?",true,"Allways 200",["raw"],"*","*","None",true,"?","?","?","?","US","\n POST type is limited to x-www-form-urlencoded<br>\n Have a werd api<br>\n Response Type is Allways text/html\n "],
- ["YaCDN","https://yacdn.org/proxy/","none",true,"Not mirrored",["raw"],"GET","None",false,"Up to 22x","?","?","?","?","FR","CDN, ignores browsers headers"],
- ["All Origins","https://api.allorigins.win/get?url=","encodeURIComponent",true,"Only code in json",["json","jsonp","raw"],"*",false,"None",true,"?","?","?","?","US","When using raw you loose status information"],
- /* //don't abuse service
- ["Cloudflare Cors Anywhere","https://test.cors.workers.dev/?","none",true,"Only code mirror (not statusText)",["raw"],"*","All but expect Forbidden headers","none",true,false,"?","none","none","?","100,000 requests/day 1,000 requests/10 minutes"],
- */
- ["CORS Hack","https://corsh.jsub.workers.dev/proxy/","none",true,"Only code mirror (not statusText)",["raw"],"*","All but expect Forbidden headers","none",true,false,"?","none","none","?","100,000 requests/day 2 requests/3 seconds"],
- ["JSONProxy","https://jsonp.afeld.me/?url=","encodeURIComponent",true,"?",["jsonp","raw"],"GET","?","?","?","?","?","?","?","?",""]
- ]};
- //may split this file in 2 right here
- //scan >> use document.write, form.submit, MediaElement.src=, anything that causes something on the page to be loaded, to scan for media and scan for upload APIs, also use javascript function chains, if a function sets the src of a media element, then find all instances where that function is called, all arguments that are passed to it and external variables accessed within it, follow the function call stack and the argument sources to decode complex web apps.
- /*
- //extracting scripts from saved page (need JScrawl):
- scrps1=JScrawl.XrakScrps(xhr1.response);
- self.ins=[];
- self.i=0;
- while(i<scrps1.length){ if(scrps1[i].innerHTML.length>2) ins.push(scrps1[i]); i++; }*
- */
- //self.ldifr=document.createElement("iframe"); //need?
- var doc2=document.cloneNode(),
- contr=document.getElementById("content"),
- xhr1=new XMLHttpRequest(),xhr2=new XMLHttpRequest(),xhrpend=[],
- doXHR=function doXHR(url,callback,method,rt,body,hed){
- var xhr; if(xhr1.readyState&3){ if(xhr2.readyState&3){xhrpend.push([url,callback,method,rt,body]);return 0;}else xhr=xhr2; }else xhr=xhr1;
- xhr.req_url=url;
- xhr.ondone=callback;
- xhr.open(method||"GET",url);
- if(hed){ while(hed.length) xhr.setRequestHeader.apply(xhr,hed.shift()); }
- xhr.responseType=rt||"text";
- xhr.send(body);
- },
- xondone=function(e){ if(typeof this.ondone=="function")this.ondone(this.response,this.req_url);
- if(xhrpend.length)doXHR.apply(self,xhrpend.shift());
- },
- xerr=function(e){ console.log("xhr error",e,this.req_url); if(xhrpend.length)doXHR.apply(self,xhrpend.shift()); },
- vwb=document.getElementById("viewbox"),
- viewItem=function(){
- //access waked item properties and display them or take action on them
- var ifr=vwb.getElementsByTagName("iframe")[0];ifr.src=this.waked_url;
- ifr.style.display="";
- },
- BR_=document.createElement("br");
- doc2.appendChild(doc2.createElement("html"));
- xhr1.addEventListener("load",xondone);
- xhr2.addEventListener("load",xondone);
- xhr1.addEventListener("error",xerr);
- xhr2.addEventListener("error",xerr);
- doXHR("https://archive.ph/https://www.example.com/?waked_url=*",function(r,u){
- doc2.documentElement.innerHTML=r;
- var rzs=doc2.getElementsByClassName("TEXT-BLOCK"),ri=0,rzL=rzs.length,ay,u2,a2,a3,$B;
- while(ri!=rzL){ay=rzs[ri].getElementsByTagName("a");if(ay[0].innerText.indexOf("waked_url=")+1)ay=ay[0];else ay=ay[1];u2=document.createElement("button");u2.onclick=viewItem.bind(u2);ay=ay.href;ay=ay.substr(ay.indexOf('?')+1).split('&'); while(ay.length){ a2=ay.shift(); a3=a2.indexOf("="); u2[a2.substr(0,a3)]=decodeURIComponent(a2.substr(a3+1).replace(/\+/g,"%20")); }
- u2.appendChild(document.createTextNode(u2.title||"untitled"));
- u2.appendChild(BR_.cloneNode());
- u2.appendChild(document.createTextNode(u2.waked_url));
- u2.appendChild(BR_.cloneNode());
- //u2.appendChild(document.createTextNode(u2.tags.split(','))); //tags
- contr.appendChild(u2);ri++;}
- });
- /* will use this service for ip address exchange for setting up rtc peer to peer connections
- doXHR('https://meeiot.org/put/56e060ed6c0526a7352871ad759f7a6a1f3b11581489e07bd506d5/test_var1=testval1', function cb(d,u){ console.log("did"); self.rar=d; });
- rar== "0:0" or something like that
- doXHR('https://meeiot.org/get/56e060ed6c0526a7352871ad759f7a6a1f3b11581489e07bd506d5/test_var1', function cb(d,u){ console.log("did"); self.rar=d; });
- //(rar=="testval1") true
- //get ip:
- //use api. instead of api64. for v4 addresses only
- doXHR('https://api64.ipify.org?format=json', function cb(d,u){ console.log("did",d.length); self.rar=d; },"GET","json");
- rar=={ip:"your ip"}
- doXHR('https://meeiot.org/?p=code.php', function cb(d,u){
- doc2.children[0].innerHTML=d;
- var rawr=doc2.children[0].innerText,
- fii=rawr.indexOf("FREE TOKENS"),
- rawr2=rawr.substr(fii+11,250).split("\n"),
- re=/[^0-9a-fA-F]/g, i=0, rwL=rawr2.length, n0, c,
- tokens=[];
- while(i<rwL){ c=rawr2[i];
- if(c.length<10||c.length>90){ if(n0) break; n0=!0; } //break 2nd time around (2nd empty line)
- else if(!re.test(c)) tokens.push(c);
- i++;
- }
- //re.test(rawr2[2]) //if true then is not a hexidecimal string
- self.meeiot_tokens=tokens;
- });
- self._waked_=self._waked_||{};
- if(confirm("Do you allow Waked to detect and share your public internet IP addrres? (click ok for yes, cancel for no)")){
- doXHR('https://api64.ipify.org?format=json', function cb(d,u){ console.log("detected ip"); self._waked_.client_ip=d.ip;
- doXHR('https://meeiot.org/push/'+meeiot_tokens[0]+'/waked_cips='+_waked_.client_ip, function cb(d,u){ console.log("did share public ip"); });
- });
- }else if(confirm("Would you like more information about how Waked wants to use your IP address?")){
- alert("Waked is designed to try to use your device to build a massive Peer to Peer voluntary botNet with your's and other waked user's devices and use that botNet to provide free services to you and all other waked users.");
- }
- */
- </script>
- </body>
- </html>
Add Comment
Please, Sign In to add comment