diff options
-rw-r--r-- | _posts/2021-04-09-kako-se-znebiti-NLB-avtentikatorja.html | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/_posts/2021-04-09-kako-se-znebiti-NLB-avtentikatorja.html b/_posts/2021-04-09-kako-se-znebiti-NLB-avtentikatorja.html index 0cffbdd..b280e7f 100644 --- a/_posts/2021-04-09-kako-se-znebiti-NLB-avtentikatorja.html +++ b/_posts/2021-04-09-kako-se-znebiti-NLB-avtentikatorja.html @@ -31,7 +31,7 @@ endofbody: <script src=//cdn.sijanec.eu/etc/npm/node_modules/@otplib/preset-brow <p> Entrustov algoritem, kot je opisano v <a href=//medium.com/@ss23/the-poor-design-decisions-of-entrust-identityguard-soft-tokens-2d355a9fe786>objavi programerja neuradnih odprtokodnih orodij za Entrust</a>, ni zelo varen. S samo dvema bajtoma naključne entropije lahko, če vemo serijsko številko, aktivacijsko kodo in vsaj en pravilen OTP žeton, uspešno dobimo OATH ključ, s katerim lahko nato generiramo neskončno mnogo žetonov in s tem izničimo celotno prednost 2FA. Za uporabo potrebujemo 65536 poskusov krat število tridesetsekundnih intervalov v prihodnost in preteklost, ki jih želimo še šteti kot veljavne. </p> -<div class="noscript nosecurecontext"> +<div> <!-- class="noscript nosecurecontext"> --> <!-- hočemo to prikazati kadarkoli --> <p> To lahko s programom `crack-otp.py`, priloženim v Git repozitoriju, avtomatiziramo. Seveda moramo imeti naložen <a href=//python.org>Python</a> in programsko knjižnico <code>oath</code>, dostopno v okviru pypi/pip repozitorijev. </p> @@ -44,13 +44,14 @@ endofbody: <script src=//cdn.sijanec.eu/etc/npm/node_modules/@otplib/preset-brow <div class="yesscript yessecurecontext"> <p> - Generiranje ključa lahko avtomatiziramo. Uporabite lahko kar orodje na tej spletni strani, ki išče za vaš žeton v preteklih, trenutnih in prihodnjih 30 sekundah. Vpišite podatke iz prvega koraka in trenutni OTP žeton, izpisan v NLB Klikin aplikaciji, in pritisnite <i>izračunaj</i>. + Če ste povezani preko HTTPS povezave in imate dovolj moderen brskalnik z javascriptom, lahko uporabite kar orodje na tej spletni strani, ki išče za vaš žeton v preteklih, trenutnih in prihodnjih 30 sekundah. Vpišite podatke iz prvega koraka in trenutni OTP žeton, izpisan v NLB Klikin aplikaciji, in pritisnite <i>izračunaj</i>. </p> <script> function buf2hex(buffer) { return Array.prototype.map.call(new Uint8Array(buffer), x => ('00' + x.toString(16)).slice(-2)).join(''); } async function r () { + document.getElementById("r").innerText = "če se to besedilo kmalu ne zamenja, vaš brskalnik ne podpira generatorja." e = new TextEncoder(); var s = e.encode(document.getElementById("s").value.replaceAll("-", "").replaceAll(" ", "")); var a = document.getElementById("a").value.replaceAll("-", "").replaceAll(" ", ""); @@ -134,8 +135,12 @@ endofbody: <script src=//cdn.sijanec.eu/etc/npm/node_modules/@otplib/preset-brow <script> var h; window.onhashchange = function () { - h = window.location.hash.split("=").pop(); - document.getElementById("generator-otp-žetonov").scrollIntoView(); + var x = window.location.hash.split("=").pop(); + if (x != "") { + window.location.hash = ""; /* da ni v URLju, če kdo pride mimo in slika ekran */ + h = x; + document.getElementById("generator-otp-žetonov").scrollIntoView(); + } }; document.addEventListener("DOMContentLoaded", function () { window.otplib.hotp.options = {digits: 8, algorithm: "sha256", encoding: "hex"}; |