{"id":162,"date":"2012-06-27T20:39:04","date_gmt":"2012-06-27T20:39:04","guid":{"rendered":"http:\/\/wawszczak.pr0.pl\/?p=162"},"modified":"2012-06-28T08:53:28","modified_gmt":"2012-06-28T08:53:28","slug":"klonowanie-tokena-rsa-nawet-nie-blisko","status":"publish","type":"post","link":"https:\/\/wawszczak.pr0.pl\/en\/2012\/06\/27\/klonowanie-tokena-rsa-nawet-nie-blisko\/","title":{"rendered":"RSA Token Cloning? Not even close&#8230;"},"content":{"rendered":"<p>Yesterday, on well known polish security blog <a href=\"http:\/\/niebezpiecznik.pl\/post\/nowy-atak-pozwala-wykrasc-klucze-z-tokenow-rsa-securid-800-i-estonskich-dowodow-osobistych\/\">niebezpiecznik.pl<\/a>, there was published new entry stated (in translation):<\/p>\n<blockquote><p>&#8220;Team of several scientists just demonstated method for `cloning` RSA tokens&#8221;<\/p><\/blockquote>\n<p>This scary post linked to <a href=\"http:\/\/blog.cryptographyengineering.com\/2012\/06\/bad-couple-of-years-for-cryptographic.html\">this article<\/a>.<br \/>\nI have read the original article, prepared by Bardou, Focardi, Kawamoto, Simionato, Steel and Tsay. This was interesting lecture, what describes several improvements to well known attack by D. Bleichenbacher. This attack allows to obtain sensitive material by serie of calls to standard PKCS#11 API function <code class=\"codecolorer text default\"><span class=\"text\">C_UnwrapKey<\/span><\/code>.<\/p>\n<p>First imporant thing to explain is term <em>Sensitive material<\/em>. This is information existing outside the token in encrypted form. Most often this are symmetric cryptographical keys (e.g. AES keys), which are used for fast enryption of big amount of data. It is done this way, because symetrical encryption is much faster then asymetrical). Of course, the sensitive material can be also data for direct RSA encryption.<br \/>\nAPI Calls used in referenced document are indented for managing symetrical keys, so the term <em>Key<\/em> is used instead <em>Sensitive material<\/em>. That is why it can be misunderstanded as RSA keys can be compromised. It doesn&#8217;t work this way!<\/p>\n<p>The originally described method was slow enough to call it &#8220;milion messages attack&#8221;, and it was marginalized. New poposition of impovements is importand because it significantly decreases required amount of token calls in really tricky way. The final amout of calls is small enough to successful attack in few hours or often minutes.<\/p>\n<p><!--more--><br \/>\nJednak nale\u017cy przypomnie\u0107 i\u017c <b> rozwa\u017cana metoda ataku umo\u017cliwia na uzyskanie w formie jawnej jedynie danych podlegaj\u0105cych szyfrowaniu kluczami RSA, nie za\u015b samych Kluczy RSA. Dlatego nie mo\u017ce by\u0107 mowy o sklonowaniu tokena RSA!<\/b><br \/>\nPo tym zasadniczym wyja\u015bnieniu mo\u017cna przyst\u0105pi\u0107 do analizy, jakie znaczenie praktyczne ma wynaleziona, nowa metoda.<br \/>\nOce\u0144my fakty:<\/p>\n<ol>\n<li>Dost\u0119p do funkcji <code class=\"codecolorer text default\"><span class=\"text\">C_UwrapKey<\/span><\/code> mo\u017cliwy jest tylko po otworzeniu sesji do tokena, czyli po podaniu has\u0142a. Metoda ta korzysta z obiektu klucza prywatnego RSA i nie ma mo\u017cliwo\u015bci wywo\u0142ania jej z kontekstu publicznego, a co za tym idzie bez wiedzy i zgody w\u0142a\u015bciciela tokena.<\/li>\n<li>dane, kt\u00f3re mog\u0105 wyciec musz\u0105 by\u0107 wcze\u015bniej dost\u0119pne dla atakuj\u0105cego w formie zaszyfrowanej, co w praktyce jest trudne do realizacji.<\/li>\n<li>typowe zastosowania w biznesie token\u00f3w RSA obejmuj\u0105 przede wszystkim autoryzacj\u0119 i podpis, tokeny wykorzystywane do szyfrowania jak i klucze przeznaczone do tego celu maj\u0105 podwy\u017cszony poziom bezpiecze\u0144stwa (s\u0142u\u017c\u0105 do tego odpowiednie atrybuty kluczy, stanowi\u0105ce swoiste plany zastosowania, np. tylko do wymiany kluczy, czy tylko do szyfrowania danych u\u017cytkownika)<\/li>\n<li>Pomy\u015blne przeprowadzenie ataku faktycznie umo\u017cliwia <i>Wyprowadzenie<\/i> poza system \u017ar\u00f3d\u0142owy kontroli nad danymi zaszyfrowanymi zaatakowanym kluczem symetrycznym.<\/li>\n<\/ol>\n<p>Na podstawie powy\u017cszego mo\u017cna stwierdzi\u0107, \u017ce <b>je\u015bli atak dojdzie do skutku, to tylko za autoryzacj\u0105 u\u017cytkownika i tylko na danych, kt\u00f3re s\u0105 ma\u0142o istotne z punktu widzenia bezpiecze\u0144stwa danych przechowywanych<\/b>, gdy\u017c Materia\u0142 Wra\u017cliwy stanowi\u0105cy Klucze Kryptografii symetrycznej jest zazwyczaj trudno dost\u0119pny nawet w formie zaszyfrowanej. Jako przyk\u0142ad we\u017amy system szyfrowania plik\u00f3w EFS, wykorzystywany w popularnym systemie plik\u00f3w NTFS, stworzonym przez Microsoft. Dost\u0119p do zaszyfrowanych kluczy AES jest mocno ograniczony ze wzgl\u0119du na dodatkowe zabezpieczenia tego systemu.<br \/>\n<\/p>","protected":false},"excerpt":{"rendered":"<p>Yesterday, on well known polish security blog niebezpiecznik.pl, there was published new entry stated (in translation): &#8220;Team of several scientists just demonstated method for `cloning` RSA tokens&#8221; This scary post linked to this article. I have read the original article, &hellip; <a href=\"https:\/\/wawszczak.pr0.pl\/en\/2012\/06\/27\/klonowanie-tokena-rsa-nawet-nie-blisko\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[33],"tags":[37,39,40,36,38],"class_list":["post-162","post","type-post","status-publish","format-standard","hentry","category-security","tag-atak","tag-pkcs1","tag-pkcs11","tag-rsa","tag-zagroenie"],"_links":{"self":[{"href":"https:\/\/wawszczak.pr0.pl\/en\/wp-json\/wp\/v2\/posts\/162","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wawszczak.pr0.pl\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wawszczak.pr0.pl\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wawszczak.pr0.pl\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wawszczak.pr0.pl\/en\/wp-json\/wp\/v2\/comments?post=162"}],"version-history":[{"count":9,"href":"https:\/\/wawszczak.pr0.pl\/en\/wp-json\/wp\/v2\/posts\/162\/revisions"}],"predecessor-version":[{"id":166,"href":"https:\/\/wawszczak.pr0.pl\/en\/wp-json\/wp\/v2\/posts\/162\/revisions\/166"}],"wp:attachment":[{"href":"https:\/\/wawszczak.pr0.pl\/en\/wp-json\/wp\/v2\/media?parent=162"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wawszczak.pr0.pl\/en\/wp-json\/wp\/v2\/categories?post=162"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wawszczak.pr0.pl\/en\/wp-json\/wp\/v2\/tags?post=162"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}