¼«ÂÄÍî¤Êµ»½Ñ¼Ô¤ÎÆüµ­

´ðËܤ϶ô¤Ã¤Æ¤ë¤«°û¤ó¤Ç¤ë¤«¤Ç¤¹¤¬¡¢¤è¤¯¼ñÌ£¤Ç¥«¥é¥ª¥±¡¦PKI¡¦½ð̾¡¦Ç§¾Ú¡¦¥×¥í¥°¥é¥ß¥ó¥°¡¦¾ðÊ󥻥­¥å¥ê¥Æ¥£¤ò¤ä¤Ã¤Æ¤¤¤Þ¤¹¡£Î¹¹¥¤­¡£¥Æ¥ì¥Ó¹¥¤­¤Ç·ÝǽÄÌ

BlackHat

Black Hat:SSL¥µ¡¼¥Ð¡¼¾ÚÌÀ½ñÃæ¤ÎCN¤ÎOID½èÍýÉÔ¶ñ¹ç¤òÆÍ¤¤¤¿¹¶·â(³¤­1)

Á°²ó¤Ï¡¢BlackHat¤Ç¾Ò²ð¤µ¤ì¤¿SSL¥µ¡¼¥Ð¡¼¾ÚÌÀ½ñ¤ÎÂоݥۥ¹¥È̾¤ò³ÊǼ¤¹¤ëCN(common name)°À­¤Î½èÍý¤ÎÉÔ¶ñ¹ç¤òÆÍ¤¤¤¿ÀȼåÀ­¤Ë¤Ä¤¤¤Æ¾Ò²ð¤·¤Þ¤·¤¿¡£

º£Æü¤Ï¡¢¼ÂºÝ¤Ë¥Æ¥¹¥È¥µ¡¼¥Ð¡¼¤òΩ¤Á¾å¤²¤Æ¥Ö¥é¥¦¥¶¤ÇÀܳ¤¹¤ë¤È¤É¤¦¤Ê¤ë¤Î¤«»î¤·¤Æ¤ß¤Þ¤¹¡£

Challenge PKI Test Suite(²þ)¤Îµ¡Ç½ÄɲÃ


¼ê»ý¤Á¤Î¾õÂÖ¤ÎTest Suite¤Ç¤Ï¡¢¾ÚÌÀ½ñ¼±ÊÌ̾¤Î¥ª¥Ö¥¸¥§¥¯¥È¼±Ê̻ҤˤĤ¤¤Æ
(1) ¥ª¥Ö¥¸¥§¥¯¥È¼±Ê̻ҤΥµ¥Ö¼±Ê̻ҤÇÂ礭¤ÊÀ°¿ô¤ò»ØÄꤹ¤ë¤È·å¤¬°î¤ì¤ë(µ¡ÃΤΥХ°)
(2) X.690¤Ë°ãÈ¿¤·¤Æ0x80¤Ç¥Ñ¥Ç¥£¥ó¥°¤·¤Æ¥¨¥ó¥³¡¼¥É¤¹¤ë¤³¤È¤¬¤Ç¤­¤Ê¤¤¡£
¤È¤¤¤Ã¤¿¾õÂ֤Ǥ·¤¿¡£
RDN¤Î°À­¥¿¥¤¥×¤òɽ¤¹ÊýË¡¤È¤·¤Æ°Ê²¼¤Î¥µ¥Ý¡¼¥È¤òÄɲ䷤ơ¢¥Æ¥¹¥È¥³¡¼¥É¤òÄɲä·¤Þ¤·¤¿¡£
(1) CN, OU, O, C, serialNumber¤Ê¤É°À­¥¿¥¤¥×¤ò̾Á°¤Ç»ØÄê¤Ç¤­¤ë¡£(¸½¹Ô)
(2) 1.2.3.4 ¤Î¤è¤¦¤Ë½½¿Ê¥«¥ó¥Þ¶èÀÚ¤ê¤ÇOID¤ò»ØÄê¤Ç¤­¤ë¡£(¸½¹Ô¡¢·å°î¤ì¤Î¥Ð¥°)
(3) #550403 ¤Î¤è¤¦¤Ë16¿Ê¿ô¤Ç°À­¥¿¥¤¥×¤ò»ØÄê¤Ç¤­¤ë¡£(µ¡Ç½ÄɲÃ)

¾ÚÌÀ½ñ¤ÎÀ¸À®


SSL¥µ¡¼¥Ð¡¼¤Î¥Û¥¹¥È̾¤Ë°Ê²¼¤Î2¤Ä¤ò²¾Äꤷ¤ÆÈ¯¹Ô¤·¤Þ¤¹¡£
CN=www.evil3.jp: °­°Õ¤Î¤¢¤ë¹¶·â¼Ô¤¬ËÜÅö¤Ë½ê»ý¤·¤Æ¤¤¤ë¥É¥á¥¤¥ó¤Î¥Û¥¹¥È
CN'=www.good-bank.com: º¾µ½ÂоݤΥۥ¹¥È


ËÜÍè¤Ê¤é¤ÐCN(2.5.4.3=0x550403)¤Ç¤¢¤ë¤è¤¦¤ÊOID¤ò¡¢ñÙ¤¹¤¿¤á¤Î¥Ë¥»¤ÎCN(CN')¤Îºî¤êÊý¤È¤·¤Æ¤Ï°Ê²¼¤Î2¤Ä¤Ç¹Ô¤¤¤Þ¤¹¡£

(1) ËöÈø"3"¤òX.690¤Ë°ãÈ¿¤·¤Æ0x80(Ê£¿ô²Ä)¤Ç¥Ñ¥Ç¥£¥ó¥°¤¹¤ë(0x05048003)
(2) ËöÈø"3"¤ò64bitÀ°¿ô¤Ç·å¤¢¤Õ¤ì¤·¤¿¸å"3"¤È¤Ê¤ëÃͤȤ¹¤ë¡£

ÊýË¡(2)¤Ë¤Ä¤¤¤Æ¤Ï¡¢·å°î¤ì¤¹¤ë¿ô¤ò"0x010000000000000003"(9¥Ð¥¤¥È)¤È¤·¤Æ¡¢¤³¤ì¤ò¥Ó¥Ã¥Èɽ¸½¤Ë¤·ËöÈø¤è¤ê7¥Ó¥Ã¥È¤Çʬ³ä¤·¤Æ¤³¤ì¤ò¥Ð¥¤¥È¤È¤·¡¢ËöÈø¤ò½ü¤­8¥Ó¥Ã¥ÈÌܤò1¤È¤·¡¢"2.5.4."¤ÎÉôʬ¤òÏ¢·ë¤¹¤ë¤È¡¢0x82808080808080808003¤È¤Ê¤ê¤Þ¤¹¡£

OpenSSL 0.9.8k¤Ç¤Ï¤É¤¦¸«¤¨¤ë¡©


OpenSSL¤Î¥³¥Þ¥ó¥É¤Ç¤Ï¤É¤Î¤è¤¦¤Ë¾ÚÌÀ½ñ¤Î¼±ÊÌ̾¤¬É½¼¨¤µ¤ì¤ë¤Î¤«³Îǧ¤·¤Æ¤ß¤¿¤¤¤È»×¤¤¤Þ¤¹¡£

¢£¥³¥Þ¥ó¥É
% openssl x509 -in ¾ÚÌÀ½ñ -noout -text
¢£OIDËöÈø"3"¤¬0x8003¤Î¾ì¹ç(X.690°ãÈ¿¤Î¥¼¥í¥Ñ¥Ç¥£¥ó¥°)
Subject: C=JP, O=Evil-CN-OID, CN=www.evil3.jp/2.5.4.3=www.good-bank.com
¢£OIDËöÈø"3"¤¬0x82808080808080808003(64bitÀ°¿ô·å°î¤ì)
Subject: C=JP, O=Evil-CN-OID, CN=www.evil3.jp/2.5.4.18446744073709551619=www.good-bank.com


CN¥â¥É¥­¤Ï¤Á¤ã¤ó¤È¶èÊ̤·¤ÆÉ½¼¨¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ç¤¹¡£CN¤Ï2.5.4.3¤Ê¤ó¤Ç¤¹¤¬¡¢0x80¥Ñ¥Ç¥£¥ó¥°¤µ¤ì¤¿¤â¤Î¤È¤Ï¤­¤Á¤ó¤È¶èÊ̤·¤Æ¤¤¤Þ¤¹¡£(18446744073709551619¤Ï0x010000000000000003¤Î10¿Ê¿ôɽ¸½¤Ç¤¹¡£)

dumpasn1¤Ç¤Îɽ¼¨


¢£ËÜʪ¤ÎCN(common name)¤Îɽ¼¨
SEQUENCE {
#06 03 55 04 03
OBJECT IDENTIFIER commonName (2 5 4 3)
#13 0C 77 77 77 2E 65 76 69 6C 33 2E 6A 70
PrintableString 'www.evil3.jp'
}

¢£¥Ë¥»¤ÎCN­¡(X.690°ãÈ¿¤Î0x80¥Ñ¥Ç¥£¥ó¥°)
SEQUENCE {
#06 04 55 04 80 03
OBJECT IDENTIFIER '2 5 4 3'
#13 11 77 77 77 2E 67 6F 6F 64 2D 62 61 6E 6B 2E 63 6F 6D
PrintableString 'www.good-bank.com'
}

¢£¥Ë¥»¤ÎCN­¢(64¥Ó¥Ã¥ÈÀ°¿ô·å°î¤ì)
SEQUENCE {
#06 0C 55 04 82 80 80 80 80 80 80 80 80 03
OBJECT IDENTIFIER '2 5 4 3'
#13 11 77 77 77 2E 67 6F 6F 64 2D 62 61 6E 6B 2E 63 6F 6D
PrintableString 'www.good-bank.com'
}


­¡¤â­¢¤âɽ¼¨¾å¤ÏËÜÅö¤ÎCN¤È¶èÊ̤Ǥ­¤Æ¤¤¤Þ¤¹¡£¤·¤«¤·¤Ê¤¬¤é­¢¤Ç¤Ï¡¢OBJECT IDENTIFIER '2 5 4 3'¤È¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤ª¤ê¡¢À°¿ô¤Î·å°î¤ì¤¬µ¯¤­¤Æ¤¤¤ë¤³¤È¤¬¤ï¤«¤ê¤Þ¤¹¡£

¤Þ¤º¤ÏÀµ¼°¤Ê(°­¤¤¿Í¤Î)URL¤ËÀܳ


cnoid01

¤Á¤ã¤ó¤ÈÀµ¤·¤¯SSLÀܳ¤Ç¤­¤Æ¤Þ¤¹¤ó¤Ç¡¢¤³¤ì¤ÏÌäÂê̵¤·¡£

FireFox 3.5.2¤Ç¥Ë¥»CN¤Î¥Û¥¹¥È¤ËÀܳ


¤½¤ì¤Ç¤Ï¡¢¼¡¤ËX.690¤Ë°ãÈ¿¤·¤Æ0x80¤Ç¥Ñ¥Ç¥£¥ó¥°¤·¤Æ¤¢¤ë¥Ë¥»CN¤ÎURL "https://www.good-bank.com/" ¤ËÀܳ¤·¤Æ¤ß¤Þ¤¹¡£
cnoid02-ff35-err-yellow

¤ª¤ª¡¢¤Á¤ã¤ó¤È·Ù¹ð½Ð¤Þ¤¹¤Í¡£¥¨¥é¥¤¡£
cnoid02-ff35-dlg

¤ª¤ª¡¢¤Á¤ã¤ó¤È¥À¥¤¥¢¥í¥°¤Þ¤Ç¡¢¡¢¡¢¥á¥Ã¥»¡¼¥¸¤Ë¤â±³¤¬Ìµ¤¯¤Æ¹¥´¶¤¬»ý¤Æ¤Þ¤¹¡£¤Á¤Ê¤ß¤Ë¾ÚÌÀ½ñ¤Ï¤³¤ó¤Ê´¶¤¸¤Çɽ¼¨¤µ¤ì¤Þ¤¹¡£
cnoid03-ff35-crtdlg

cnoid04-ff35-crtdlg

¥Ë¥»CN¤Ë¤Ä¤¤¤Æ¡¢Ê¸»ú²½¤±¤Î¤è¤¦¤Ëɽ¼¨¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢¤Þ¤¡¡¢²ø¤·¤¤¤È¤ï¤«¤ê¤Þ¤¹¡£

64bitÀ°¿ô·å¤¢¤Õ¤ì¤¹¤ë¾ì¹ç¤Ç¤â¡¢É½¼¨¤ÏƱ¤¸¤À¤Ã¤¿¤Î¤Ç¡¢¥­¥ã¥×¥Á¥ã¤Ï³ä°¦¤·¤Þ¤¹¡£

Internet Explorer 8¤Ç¥Ë¥»CN¤Î¥Û¥¹¥È¤ËÀܳ


Àè½µ¤¢¤¿¤ê¤ËWindows Update¤·¤¿¡¢¤Û¤ÜºÇ¿·¤À¤È»×¤¦IE8¤Ç¥Ë¥»CN¤ÎURL¤ËÀܳ¤·¤Æ¤ß¤Þ¤·¤¿¡£
cnoid06-ie8-goodbank

°ìÀÚ·Ù¹ð¤Ê¤¯¥Ë¥»CN¤Î¥µ¥¤¥È¤ËÀܳ¤Ç¤­¤Æ¤·¤Þ¤¤¤Þ¤¹¤Í¡£
cnoid07

¾ÚÌÀ½ñ¥À¥¤¥¢¥í¥°¤Ç´Ñ¤Æ¤ß¤ë¤ÈX.690°ãÈ¿¤Î0x80¥Ñ¥Ç¥£¥ó¥°¤Ç¤âÀ°¿ô·å°î¤ì¤Ç¤âɽ¼¨¾å¤ÏCN(common name)¤Ç¤¢¤ë¤È¤·¤ÆÉ½¼¨¤µ¤ì¤Æ¤·¤Þ¤¤¤Þ¤¹¡£

Google Chrome 2¤Ç¥Ë¥»CN¥µ¥¤¥È¤ËÀܳ


º£Æü¤Î»þÅÀ¤ÇºÇ¿·¤À¤È»×¤¦Google Chrome 2.0.172.43¤ÇƱÍͤËÀܳ¤·¤Æ¤ß¤Þ¤·¤¿¡£
cnoid09

¤³¤Á¤é¤â·Ù¹ð¤Ê¤¯Àܳ¤Ç¤­¤Æ¤·¤Þ¤¤¤Þ¤¹¡£
cnoid10

¾ÚÌÀ½ñ¤âwww.good-bank.comÍѤÇÌäÂê¤Ê¤¤¤³¤È¤Ë¤Ê¤Ã¤Á¤ã¤Ã¤Æ¤Þ¤¹¤Í¡£

Opera 9.5¤ÇÀܳ


¤³¤Î¾¤ËOpera for Windows 9.50 build10063¤Ç¤â»î¤·¤Æ¤ß¤¿¤ó¤Ç¤¹¤¬¡¢Opera¼«ÂΤ¬DNS¤Ç°ú¤±¤Ê¤¤¥Û¥¹¥È¤Ïɽ¼¨¤¬¤Ç¤­¤Ê¤¤¤è¤¦¤Êµ¤¤¬¤¹¤ë¤ó¤Ç¤¹(¥í¡¼¥«¥ëPC¤Îhttp://192.168.1.133/Åù¤Ç¤âÀܳÉÔǽ)¡£¤½¤Î¤¿¤á¥Æ¥¹¥È¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿¡£
cnoid-opera-01

¤È¡¢¡¢¡¢»×¤Ã¤¿¤éñ¤Ë;·×¤Ê¥×¥í¥­¥·¤¬ÀßÄꤵ¤ì¤Æ¤¤¤¿¤À¤±¤Ç¤·¤¿¡£¤¹¤ß¤Þ¤»¤ó¡£µ¿¤Ã¤Æ¥´¥á¥ó¥è¡£µ¤¤ò¼è¤êľ¤·¤ÆÀܳ¤·¤Æ¤ß¤Þ¤¹¡£¤Þ¤º¤Ï¡¢(²ø¤·¤¤¤±¤É)Àµ¤·¤¤HTTPSÀܳ¡£
cnoid-opera-02

¤Þ¤¡¡¢°ÂÁ´¤Ç¤¹(¾Ð)¡£
cnoid-opera-03


¼¡¤Ë¥Ë¥»CN¤Î¥µ¥¤¥È¤ËÀܳ¤·¤Æ¤ß¤Þ¤¹¡£
cnoid-opera-04

cnoid-opera-05

¤Á¤ã¤ó¤È¿ÆÀڤʷٹ𤬤Ǥޤ¹¡£¤â¤¦¤Á¤ç¤Ã¤È¿§¤¬ÊѤï¤Ã¤¿¤ê¥¤¥ó¥Ñ¥¯¥È¤¬¤¢¤ë·Ù¹ð¤À¤È¤¤¤¤¤ó¤Ç¤¹¤±¤É¤Í¡£

¤³¤ì¤â¡¢¤É¤Ã¤Á¤Î¥Ë¥»CN¤Ç¤â·ë²Ì¤ÏƱ¤¸¤Ç¤·¤¿¡£

Opera¤ÎºÇ¿·ÈǤϸ½»þÅÀ¤Ç9.64¤À¤½¤¦¤Ç¡¢¤Á¤ç¤Ã¤È¸Å¤¤¤ä¤Ä¤Ç¤¹¤¬¡¢¥Ë¥»CN OIDÌäÂê¤Ë¤Ä¤¤¤Æ¤Ï¤Á¤ã¤ó¤ÈÂбþ¤µ¤ì¤Æ¤¤¤ë¤Ã¤Æ¤³¤È¤Ç¡¢¡¢¡¢

ruby + httpclient2


ruby¤Èhttpclient2¤Î¥â¥¸¥å¡¼¥ë¤Ç¤â»î¤·¤Æ¤ß¤Þ¤·¤¿¡£OpenSSL¥Ù¡¼¥¹¤Ç¤¹¤¬¡¢¥Ë¥»CN¥µ¥¤¥È¤ËÀܳ¤¹¤ë¤È¤Á¤ã¤ó¤È¥¨¥é¡¼¤Ë¤Ê¤Ã¤Æ¤¯¤ì¤Þ¤¹¡£
/usr/lib/ruby/1.8/openssl/ssl.rb:123:in `post_connection_check': hostname was not match with the server certificate (OpenSSL::SSL::SSLError)


°Ê¾å¡¢¤³¤ó¤Ê´¶¤¸¤Ç¼Â¸³Êó¹ð¤Ç¤·¤¿¡£

¤Ç¤Ï¤Ç¤Ï

¢¨Ãí°Õ¡§¤³¤Îµ­»ö¤Î¥¦¥£¥ó¥É¥¦¥­¥ã¥×¥Á¥ã²èÁü¤Ï¡¢Í¾·×¤ÊÉôʬ¡¢¶õÇò¤Ê¤É¤ò½ü¤¯¤¿¤á¤Ë¥È¥ê¥ß¥ó¥°¤·¤¿¤ê¡¢¶õÇò¤Îºï½üÅù¤Î²Ã¹©¤ò¤·¤Æ¤¤¤Þ¤¹¡£

´ØÏ¢µ­»ö



Black Hat¤Î¾ÚÌÀ½ñNull Termination¹¶·â (¤½¤Î4:ÈÖ³°ÊÔ RubyÊÔ)

°ìÏ¢¤ÎNull Termination¹¶·â¤Îµ­»ö¤ÎÈÖ³°ÊԤȤ·¤Æ¡¢Ruby¤Îhttpclient2¤Ê¤é¤É¤¦¤Ê¤Î¤«¡¢¤Á¤ç¤Ã¤È»î¤·¤Æ¤ß¤Þ¤·¤¿¡£

¤³¤³¤Ë¤Ï¤³¤ó¤Ê¤³¤È¤¬½ñ¤¤¤Æ¤¢¤ë¤Î¤Ç

Ruby¤Înet/https¤è¤ê
Ãí°Õ¡£net/https ¤Ï RFC2818 ¤Î 3.1 ¤ËÄê¤á¤é¤ì¤¿¡Ö¥µ¡¼¥Ð¡¼¤Î¾ÚÌÀ½ñ¤Ëµ­ºÜ¤µ¤ì¤¿¿È¸µ¤Î¥Á¥§¥Ã¥¯¡×¤ò¼«¤é¤Ï¤·¤Ê¤¤¡£Àܳ¤·¤Æ¤¤¤ë¤Ï¤º¤Î¥µ¡¼¥Ð¤Î¥Û¥¹¥È̾¤È¾ÚÌÀ½ñ¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥Û¥¹¥È̾¤¬°ìÃפ¹¤ë¤«¤ò¥é¥¤¥Ö¥é¥ê¤Î»ÈÍѼԤ¬³Æ¼«¼ÂÁõ¤¹¤ëɬÍפ¬¤¢¤ë¡£


Ruby¤Ï¥Û¥¹¥È̾¤Î°ìÃ׳Îǧ¤Ï¤·¤Æ¤Ê¤¤¤Î¤«¤È»×¤Ã¤¿¤é¡¢gotoyuzo¤µ¤ó¤ä¡¢nahi¤µ¤ó¤¬¡ÖRuby News 2007.10.04: net/https¥é¥¤¥Ö¥é¥ê¤Ë¤ª¤±¤ë¡ÖÃæ´Ö¼Ô¤Ë¤è¤ë¤Ê¤ê¤¹¤Þ¤·¹¶·â¡×¤ËÂФ¹¤ëÀȼåÀ­¤Ë¤Ä¤¤¤Æ¡×¤Ë½ñ¤«¤ì¤Æ¤¤¤ëÄ̤ꡢ¤Á¤ã¤ó¤È¥Û¥¹¥È̾¤Î°ìÃ׳Îǧ¤Ï¤·¤Æ¤¤¤ë¤È¶µ¤¨¤Æ¤¯¤ì¤Þ¤·¤¿¡£

¤½¤ì¤Ç¤Ï¤È¡¢Ruby(¤ÎOpenSSL)¤Ç¤ÏNull Termination¤ÎÌäÂê¤Ïµ¯¤­¤Ê¤¤¤Î¤«¤È³Îǧ¤·¤Æ¤ß¤Þ¤·¤¿¡£OpenSSL¤Ç¤ÏNull¤¬¤¢¤Ã¤Æ¤â¼±ÊÌ̾¤Î°À­ÃͤÏÀµ¤·¤¯"\00"¤Î¤è¤¦¤Ë¼èÆÀ¤Ç¤­¤ë¤Î¤Ç¿ʬÌäÂê̵¤¤¤À¤í¤¦¤È»×¤¦¤ï¤±¤Ç¤¹¤¬¡¢¡¢¡¢

Ruby¤Ï¤Á¤ç¤Ã¤È½ñ¤±¤ëÄøÅÙ¤ÇËØ¤ÉÁÇ¿ÍÆ±Á³¤Ê¤ó¤Ç¡¢¤¤¤í¤¤¤í½àÈ÷¤¬É¬ÍפǤ¹¡£¤¤¤í¤¤¤í¹Í¤¨¤¿µó¶ç¡¢´Êñ¤½¤¦¤Ê¤ó¤Ç¤³¤ó¤Ê´Ä¶­¤Ç»î¤¹¤³¤È¤Ë¤·¤Þ¤·¤¿¡£

¡¦cygwin¾å¤ÎRuby 1.8.7-p72
¡¦rubygems¤ò»È¤¦
¡¦http-client2¤ò»È¤¦

¥»¥Ã¥È¥¢¥Ã¥×



Ruby¤ò­¤¹¤È¤³¤Þ¤Ç¤Ï¡¢cygwin¤Î¥Ñ¥Ã¥±¡¼¥¸¤ÇÉáÄ̤ˤä¤Ã¤Æ¡¢

gems¤ò­¤¹¤Ë¤Ï¤³¤Î¥µ¥¤¥È¤«¤érubygems-1.3.5.tgz¤ò¥À¥¦¥ó¥í¡¼¥É¤·¤Æ²òÅष¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤Ç¤­¤Þ¤¹¡£

http://rubyforge.org/frs/?group_id=126»²¾È
% tar xvfz rubygems-1.3.5.tgz
% cd rubygems*
% ruby setup.rb


http-client2¤Ï

http://raa.ruby-lang.org/project/httpclient/2.1.4
% gem install httpclient --source http://dev.ctor.org/download/


°Ê¾å¤Ç¤¹¡£¤¹¤´¤¤¤Ê¤¡¡¢¥»¥Ã¥È¥¢¥Ã¥×¤Ï´Êñ¤Ç¤¹¡£

¤Ç¡¢Àܳ



Null Termination¾ÚÌÀ½ñ¤ÎÀßÄꤵ¤ì¤¿¥Ë¥»¥µ¡¼¥Ð¡¼¤òΩ¤Á¾å¤²¤È¤¤¤Æ¡¢°Ê²¼¤Î¤è¤¦¤ÊRuby¤Î¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤·¤Þ¤¹¡£¥Æ¥¹¥È¤Ê¤ó¤Ç¡¢¥ë¡¼¥È¤À¤±Äɲ䷤Ȥ«¤Ê¤¤¤È¤¤¤±¤Þ¤»¤ó¡£

#!/usr/bin/ruby
require 'rubygems'
require 'httpclient'
URL = 'https://test.ibm.com/' #¥Ë¥»¤Î¥Û¥¹¥È
clnt = HTTPClient.new
clnt.ssl_config.set_trust_ca("00-ECOM-TEST-ROOTCA-SIG.pem")
puts clnt.get_content(URL)


¤Ç¡¢Áá®Àܳ¡£

/usr/lib/ruby/1.8/openssl/ssl.rb:123:in `post_connection_check': hostname was not match with the server certificate (OpenSSL::SSL::SSLError)
¡¡¡¡from /usr/lib/ruby/gems/1.8/gems/httpclient-2.1.5.2/lib/httpclient/session.rb:260:in `post_connection_check'


¤È¥¨¥é¡¼É½¼¨¤µ¤ì

test.ibm.com
¤È
Subject: C=JP, O=Evil2, CN=test.ibm.com\x00.evil.jp
¤È¤Ï°ìÃפ·¤Ê¤¤


¤È¡¢Àµ¤·¤¯¥¨¥é¡¼¤È¤Ê¤ê¤Þ¤·¤¿¡£¤µ¤¹¤¬¡¢nahi¤µ¤ó¤Îhttp-client2¤Ï´Êñ¤À¤·¡¢¤Á¤ã¤ó¤È¤·¤Æ¤Þ¤¹¤Í¤§¡£¤Á¤ç¤Ã¤ÈRuby¤Ë²þ½¡¤·¤¿¤¯¤Ê¤Ã¤Á¤ã¤¤¤Þ¤¹¤Í¤§(¾Ð)

gotoyuzo¤µ¤ó¡¢nahi¤µ¤ó¡¢¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤·¤¿¡££í¡Ê¡²¡¡¡²¡Ë£í

º£Æü¤Î¤Ä¤Ö¤ä¤­


httpclient´Êñ¤Ë¤Ä¤«¤¨¤Æ¤«¤Ê¤êÎɤ¤¤ó¤Ç¤¹¤¬¡¢set_trust_ca¤È¤«¾ÚÌÀ½ñÆÉ¤ß¹þ¤à»þ¡¢DER¤Ç¤âPEM¤Ç¤âÆÉ¤á¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤ë¤È¡¢À¨¤¯¥¦¥ì¥·¥¤¤Ê¤¡¤È»×¤¤¤Þ¤·¤¿¡£¤¢¤È¡¢ÊÌ·ï¤Çsqlite3-ruby¤òÆþ¤ì¤¿¤¤¤ó¤Ç¤¹¤¬¡¢cygwin¾å¤Ç¤«¤Ê¤ê¤Æ¤³¤º¤Ã¤Æ¤Þ¤¹(µã)¡£¤³¤ÎÆó¤Ä¤¬²ò·è¤¹¤ì¤Ð¥à¥Õ¥Õ¥×¥í¥¸¥§¥¯¥È¤ÎPerl¤Î¤ä¤Ä¤òRuby¤Ë°Ü¤¹¤«¤Ê¤¡¤È»×¤Ã¤Æ¤¤¤ë¤ó¤Ç¤¹¤¬¡¢¤Ï¤Æ¤µ¤Æ¡¢¤É¤¦¤Ê¤ë¤³¤È¤ä¤é¡¢¡¢¡¢








ºÇ¿·µ­»ö
Categories
Archives
Twitter
µ­»öGoogle¸¡º÷

ËÜ¥Ö¥í¥°Æâ¤òGoogle¸¡º÷
Yahoo!¥¢¥¯¥»¥¹²òÀÏ
Travel Advisor
µ­»ö¸¡º÷
QR¥³¡¼¥É
QR¥³¡¼¥É
  • ¥é¥¤¥Ö¥É¥¢¥Ö¥í¥°