Fórumok
Nem értem. Van ilyenje a Win-nek, és ide be lehet importálni mindenféle tanúsítványokat - pl. olyat, amit aztán Acrobattal PDF-ek aláírására lehet használni. Egy (nem publikus) leírás szerint amikor az aláírásra használt tanúsítványt beimportálom, akkor állítsak be ehhez valami "kulcseléréshez használatos jelszót", és jelezzem, hogy nem exportálható ki a privát kulcs. No most, ebből a tanúsítványtárolóból a Reader valahogyan mégis csak ki kell szedje a privát kulcsomat, hisz e nélkül elég nehéz lenne neki digitálisan aláírni *ezzel a kulccsal*. Node ha kiszedi a szignózáshoz, akkor mi biztosítja, hogy nem menti el máshova - és máris exportál.
Hozzászólások
https://github.com/FreeRDP/FreeRDP/wiki/Jailbreak
"Jailbreak is a tool for exporting certificates with their private keys, even if the private key was marked as non-exportable in the first place."
Ha beállítasz neki a kulcseléréshez jelszót, akkor gondolom csak akkor tud aláírni az Acrobat, ha megadod a jelszót. Vagy nem?
Igen. De miután sikerült kigyökölni, hogy hogyan lehetne Linux (vagy akár BSD :-) ) alatt digitálisan aláírt PDF-et csinálni (nem, nem az Acrobat-tal) - szóval most azt találta ki valaki nekem, hogy oldjam meg, hogy Linux alatt se lehessen exportálni a privát kulcsot. Mindezt úgy, hogy alapul fent hivatkozott wines leírást vesszük (amely szerint ugye beállíthatok egy non-exportable tanúsítványt). Nekem meg áll az agyam, mert nem tudom elképzelni, hogy egy ilyet hogy lehet megcsinálni. (Azon túlmenően, hogy hazugság az egész ez a non-exportable izé.)
A linket nagyon köszönöm, talán jó lesz a harcban.
A soft token az soft token. A non-exportable nem hazugság, hanem azt csinálja, amit mond: letiltja a user interface-en az exportot. Aki elolvashatja a private keyt, mondjuk aláírás céljából, az persze nyilván azt csinál vele, amit nem szégyell.
Ha valakinek ez nem megfelelő, az ne soft tokenben tárolja a tanusítványát, hanem SmartCard-ban vagy hardware tokenben.
Akkor az bizony nem lesz kinyerhető sem Linux, sem Windows alatt.
Üdv,
Marci
Hatalmas +1
Szívemből szóltál :)
Mellesleg, elvileg ha jól tudom a soft tokennél sem kapja meg semelyik app közvetlenül a privát kulcsot. Legalábbis win-en. Hanem valami interfacen küldi be az adatot, majd a visszakapja annak alamilyen változatát (encryptelt, aláírt, stb)
De ettől még softtokennél kinyerhető marad a kulcs.
Miért gondoljuk, hogy, ha soft tokennél kinyerhető a kulcs, akkor smart card-nál nem?
Mindkettő mellé lehet pro és kontra érveket felhozni.
Ha egy hardtokenből kinyerhető a private key akkor az egy pendrive. Normálisan a privát kucs a tokenen kéne hogy generálódjon és a chip-nek fizikailag kéne úgy kinéznie hogy ne tudja kiadni magából. Aztán persze vannak olcsóbb megoldások...
+1 (bookmark)
Miért mondod ezt? Az egyiknél a tanusítványt a számítógépeden tartod (amin akár admin lehetsz és bármit megtehetsz) (mégha a Crypto API védi is), a másik esetben pedig egy másik számítógépen, amelyiken nem lehetsz admin és ami kulcsot nem ad Neked, hanem titkosít/felold Neked.
Mondanál példát arra, miképp is nyered ki a tanusítványt egy SmartCard-ból? Esetleg a kulcs kinyerhetőséggel kapcsolatos pro érveket a soft tokenhez és kontra érveket a SmartCardhoz/HW tokenhez?
Üdv,
Marci
Az első részét nem igazán értem, mindenképpen lokálisan tárolod a privát kulcsodat, ugyanakkor nem tudok róla, hogy a tároló védelmi mechanizmusát sikerült feltörni (Windows esetén).
Kontra a SC ellen: a tanúsítványt egyszerű PIN-el véded (legalábbis azoknál a megoldásoknál, amivel találkoztam), aminek a hosszúsága is limitált, nem alkalmazhatsz policy-t a változtatás kikényszerítésére (a blokkolhatóság a soft tokenre is érvényes, ezért ezt pro érvként nem hozom ide).
A privát kulcs hozzáférhetőségre jobban érdekelne, de erről igazán nem találtam általános dokumentációt.
Megjegyzés a pin-hez:
Az csak a nevében pin, valójában tetszőleges karaktereket tartalmazhat. Ami viszont igaz, hogy a hozzát még csak-csak ki lehet kényszeríteni a komplexitását azonban nem. (Legalábbis én nem tudok róla, hogy lehetne.)
A SmartCard egy mikrocomputer, ami titkosít-kikódol és ezen túlmenően nem férsz hozzá. Amikor kulcspárt generál, a privát kulcsot nem tudja odaadni. A PC-dhez meg hozzáférsz akárhogy.
Ugyanaz?
http://en.wikipedia.org/wiki/Smart_card
Üdv,
Marci
Illetve TPM chipes gépen lehet Virtual SmartCard-od, ami a soft token kényelmét és olcsóságát hozza a hardveres token biztonsága mellett. Én ezt használom :)
Üdv,
Marci
Ezt nem is tudtam. Minden nap tanul valami újat az ember.
Helló!
Meg is osztod, ha már megtaláltad a megoldást?
Aláírt pdf engem is érdekelne, főleg linuxon.
Java kell hozzá, de megy. Csináltam vele hivatalos GOVCA-s tanúsítvánnyal aláírt PDF-et, amit a túloldal hivatalosnak minősített. http://jsignpdf.sourceforge.org (Nálunk magyarítás is van hozzá, kollega most mondta, h hivatalosan nem tolta be a peccset a repóba. De lehet, hogy ha ki lesz rendesen pofozva, akkor megteszi.)
Nem jó a link, erre gondoltál: jsignpdf.sourceforge.net?
Bocsánat, igen arra gondoltam.
Én ilyesmit úgy oldanék meg, hogy a tanúsítványtárolónak lenne egy aláírás funkciója.
Ha én egy program vagyok és egy pdf-et akarok aláírni, akkor megkérhetem a tenúsítványtárolót, hogy légyszi, írd alá, de az nem adja nekem ide a kulcsot, hogy én írjak alá.
A te problémádat is így közelíteném meg, legfeljebb linux/BSD alatt lenne egy általad készített, megbízható aláíró szolgáltatás, ami csak használja de nem adja ki a kulcsot.
Persze nem tudom, hogy megy a pdf aláírása, ha ezt csak az a program végezheti (pl. az Acrobat), és ehhez kell neki a kulcs, akkor ez bizonyára nem működik.
Mások is így csinálják. Csakhogy, ha admin vagy, ennek a rutinnak a működésébe is beavatkozhatsz. Márpedig ott van neki a privát kulcs...
Szóval lehet nehezíteni az illetéktelen hozzáférést, de valójában megakadályozni, soft tokennel, nem lehet.
Üdv,
Marci
Valószínűleg pont annyira lenne bonyolult, mint a smard card-ról lelopni.
(kivéve azt az eshetőséget, hogy átírod a felhasználód jelszavát és szimplán bejelentkezel)
BALE smart cardüról nem lehet kinyerni/kilopni a privát kulcsot még fizikai beavatkozással sem!
.. és tőletek rendelhető? :)
http://nmhh.hu/cikk/3954/Mi_a_biztonsagos_alairasletrehozo_eszkoz_BALE
"Valószínűleg pont annyira lenne bonyolult, mint a smard card-ról lelopni."
Valoszinuleg nem. Soft tokennel az egyetlen kovetelmeny, hogy kodot tudj futtatni local system-kent, ami ha admin vagy, mar adott, innentol megvannak a megfelelo toolok.
Smartcard-bol ha valami hulladekot fogtal ki, akkor van eselyed glitching-el, vagy side channel tamadassal (RF vagy differential power analysis), de ha egy normalisat, akkor kb. ez az egyetlen lehetoseg, ami honapokat jelent egy FIB elott.
--
"You're NOT paranoid, we really are out to get you!"
Tudsz esetleg konkrét esetet, amikor sikerült a Windows Certificate Store-ból közvetlenül vagy a Cryptography API-n keresztül kilopni a privát kulcsot?
A mechanizmus a Windows 2000-ben debütált, volt rá 15 év.
Mimikatzal, amikor és ahányszor akarod. Https://www.youtube.com/watch?v=M3XX3CHihJY
Nagy csoda nincs benne: Adminként kell futtatni, onnantól megvan a lehetősége rá, hogy megtegye és megteszi.
Üdv,
Marci
Mauzi fenti linkjén levő Jailbreak is működik - délelőtt teszteltem. Szépen, *.p12-be (.pfx) lehetett vele menteni.