Help
RSS
API
Feed
Maltego
Contact
Domain > api.readonceonly.com
×
Welcome!
Right click nodes and scroll the mouse to navigate the graph.
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2022-04-17
54.68.12.145
(
ClassC
)
2025-01-12
54.191.190.200
(
ClassC
)
Port 443
HTTP/1.1 200 OKDate: Sun, 12 Jan 2025 02:36:36 GMTContent-Type: text/htmlContent-Length: 13719Connection: keep-alivex-amzn-RequestId: eed3de5a-b689-4e0a-9b01-7e613cdcee1dx-amz-apigw-id: EQOcGGQpPHcEergX-Amzn-Trace-Id: Root1-67832ab3-2b8dc05e730130ad762a9ce7;Parent2d411823d86b5abf;Sampled0;Lineage1:1570c341:0 html> head> script srchttps://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js integritysha384-tsQFqpEReu7ZLhBV2VZlAu7zcOV+rXbYlF2cqB8txI/8aZajjp4Bqd+V6D5IgvKT crossoriginanonymous>/script> script srchttps://code.jquery.com/ui/1.12.1/jquery-ui.js integritysha384-JPbtLYL10d/Z1crlc6GGGGM3PavCzzoUJ1UxH0bXHOfguWHQ6XAWrIzW+MBGGXe5 crossoriginanonymous>/script> script srchttps://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.2/rollups/aes.js integritysha384-YkYpnhy3j3+zc3fQvzlbh4WGwDgt+06gsGsaApwM1O3IKIsKJk61C0Lr6YvbovUV crossoriginanonymous>/script> script srchttps://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.2/rollups/pbkdf2.js integritysha384-3TpUaoUrOhYmfB7OZ8ul4rKMr/NQRp2wiO+NtwbnXVaGIY/kv3Inu846n0P+AKwU crossoriginanonymous>/script> link relstylesheet hrefhttps://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css integritysha384-xewr6kSkq3dBbEtB6Z/3oFZmknWn7nHqhLVLrYgzEFRbU/DHSxW7K3B44yWUN60D crossoriginanonymous> link relstylesheet hrefhttps://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css integritysha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk crossoriginanonymous> !--script srchttps://code.jquery.com/jquery-3.5.1.slim.min.js integritysha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj crossoriginanonymous>/script>--> script srchttps://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js integritysha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo crossoriginanonymous>/script> script srchttps://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js integritysha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI crossoriginanonymous>/script> style> /* Style the body */ body { text-align:center; margin: 5em; } h2 { color: darkgrey; margin-bottom: 2em; } textarea { border-radius: 0.5em; width: 100%; } form { width: 50%; margin: auto; } .note { color: slategrey; font-size: 1em; } /* Style the tab */ .tab { overflow: hidden; border: 1px solid #ccc; background-color: #f1f1f1; } /* Style the buttons that are used to open the tab content */ .tab button { background-color: inherit; float: left; border: none; outline: none; cursor: pointer; padding: 14px 16px; transition: 0.3s; } /* Change background color of buttons on hover */ .tab button:hover { background-color: #ddd; } /* Create an active/current tablink class */ .tab button.active { background-color: #ccc; } /* Style the tab content */ .tabcontent { display: none; border: 1px solid #ccc; border-top: none; padding-top: 2em; padding-bottom: 2em; } .tabcontent { animation: fadeEffect 1s; /* Fading effect takes 1 second */ } /* Go from zero to full opacity */ @keyframes fadeEffect { from {opacity: 0;} to {opacity: 1;} } /style> /head> h1>Secure One-Time Password/h1> h2>Secret Share Site/h2> !-- Tab links --> div classtab> button idcreateBtn classtablinks onclickopenTab(event, create)>Create a Secret/button> button idretrieveBtn classtablinks onclickopenTab(event, retrieve)>Retrieve a Secret/button> /div> !-- Tab content --> div idcreate classtabcontent> form action#> h4>Enter Secret Here:/h4> textarea idnewSecret classform-control rows10>/textarea> br>br> Optional passphrase: (will be required for decryption)* input classform-control typetext idnewpassphrase> br>br> input typebutton classbtn btn-primary btn-lg btn-block valueCreate a new secret idnewSecretBtn /> input classbtn btn-secondary btn-lg btn-block typereset> br> div classnote>*If you provide a passphrase when creating a secret, the data will be encrypted with AES-256 in CBC mode in your browser prior to being sent to the server. This is the most secure mode, as the server will never see the passphrase./div> /form> /div> !-- Tab content --> div idretrieve classtabcontent> h4>Retrieve a secret/h4> br> form action#> Enter secret UUID: input classform-control typetext idgetSecret> br>br> Optional passphrase: (required if one was used for encrypting) input classform-control typetext idgetpassphrase>Br> br>br> input typebutton classbtn btn-primary btn-lg btn-block valueRetrieve a secret idgetSecretBtn /> input typereset classbtn btn-secondary btn-lg btn-block> /form> /div> div idnewSecretDialog titleNew secret> div idnewSecretUuid classalert alert-success rolealert>/div> br> div idnewSecretUrl>/div> button classbtn btn-primary btn-lg btn-block idcopySecretUrl>Copy URL/button> div>Note: You can only visit the secret URL once, after which the secret is deleted./div> /div> div idgetSecretDialog titleSecret retrieved> div idnewSecretUrl>/div> div idsecretText classalert alert-success rolealert>/div> br> button classbtn btn-primary btn-lg btn-block idcopySecret>Copy Secret/button> /div> script languagejavascript typetext/javascript> const keySize 256; const ivSize 128; const iterations 100; function encrypt (msg, pass) { const salt CryptoJS.lib.WordArray.random(128/8); const key CryptoJS.PBKDF2(pass, salt, { keySize: keySize/32, iterations: iterations }); var iv CryptoJS.lib.WordArray.random(128/8); var encrypted CryptoJS.AES.encrypt(msg, key, { iv: iv, padding: CryptoJS.pad.Pkcs7, mode: CryptoJS.mode.CBC }); // salt, iv will be hex 32 in length // append them to the ciphertext for use in decryption var transitmessage salt.toString()+ iv.toString() + encrypted.toString(); return transitmessage; } function decrypt (transitmessage, pass) { var salt CryptoJS.enc.Hex.parse(transitmessage.substr(0, 32)); var iv CryptoJS.enc.Hex.parse(transitmessage.substr(32, 32)) var encrypted transitmessage.substring(64); var key CryptoJS.PBKDF2(pass, salt, { keySize: keySize/32, iterations: iterations }); var decrypted CryptoJS.AES.decrypt(encrypted, key, { iv: iv, padding: CryptoJS.pad.Pkcs7, mode: CryptoJS.mode.CBC }) return decrypted.toString(CryptoJS.enc.Utf8); } const APIUrl location.protocol+//+location.hostname+(location.port ? :+location.port: )+window.location.pathname; $(#newSecretBtn).click( function() { var req { secret: $(#newpassphrase).val() ? encrypt($(#newSecret).val(), $(#newpassphrase).val()) : $(#newSecret).val() }; $.post(APIUrl, JSON.stringify(req), function(data) { $(#newSecretUuid).html(Your secret ID is: +data.uuid); $(#newSecret).val(); $(#newpassphrase).val(); $(#copySecretUrl).click(function() { copyTextToClipboard(APIUrl+?secret+data.uuid); $(#newSecretDialog ).dialog(close); }); $( #newSecretDialog ).dialog(open); }); }); $(#getSecretBtn).click( function() { if ($(#getSecret).val()) { $.get(APIUrl+$(#getSecret).val(), function(data) { $(#getSecret).val(); $( #getSecretDialog ).dialog(open); const secret $(#getpassphrase).val() ? decrypt(data.secret, $(#getpassphrase).val()) : data.secret; $(#secretText).html(Your secret is: +secret); $(#copySecret).click(function() { copyTextToClipboard(secret); $(#getpassphrase).val(); $( #getSecretDialog ).dialog(close); }); }); } }); function fallbackCopyTextToClipboard(text) { var textArea document.createElement(textarea); textArea.value text; document.body.appendChild(textArea); textArea.focus(); textArea.select(); try { var successful document.execCommand(copy); var msg successful ? successful : unsuccessful; console.log(Fallback: Copying text command was + msg); } catch (err) { console.error(Fallback: Oops, unable to copy, err); } document.body.removeChild(textArea); } function copyTextToClipboard(text) { if (!navigator.clipboard) { fallbackCopyTextToClipboard(text); return; } navigator.clipboard.writeText(text).then(function() { console.log(Async: Copying to clipboard was successful!); }, function(err) { console.error(Async: Could not copy text: , err); }); } function getUrlVars() { var vars {}; var parts window.location.href.replace(/?&+(^&+)(^&*)/gi, function(m,key,value) { varskey value; }); return vars; } function openTab(evt, sectionName) { // Declare all variables var i, tabcontent, tablinks; // Get all elements with classtabcontent and hide them tabcontent document.getElementsByClassName(tabcontent); for (i 0; i tabcontent.length; i++) { tabcontenti.style.display none; } // Get all elements with classtablinks and remove the class active tablinks document.getElementsByClassName(tablinks); for (i 0; i tablinks.length; i++) { tablinksi.className tablinksi.className.replace( active, ); } // Show the current tab, and add an active class to the button that opened the tab document.getElementById(sectionName).style.display block; evt.currentTarget.className + active; } $(document).ready(function () { $(#newSecretDialog).dialog({ autoOpen : false, modal : true, show : blind, hide : blind, width: 600 }); $(#getSecretDialog).dialog({ autoOpen : false, modal : true, show : blind, hide : blind, width: 600 }); var secret getUrlVars()secret; if (secret ! undefined) { $(#getSecret).val(secret); window.history.replaceState({}, document.title, window.location.pathname); $(#retrieveBtn).click(); } else { $(#createBtn).click(); } }); /script>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]