RSA Á¢ÒìɳºÐÅÌ»õ| Tala Security¡ª¡ª¸ßЧ¼ì²âºÍ·À»¤ÖÖÖÖÕë¶ÔWEB¿Í»§¶ËµÄ¹¥»÷
2020-02-18
2020Äê2ÔÂ24ÈÕ-28ÈÕ£¬ÍøÂçÇå¾²ÐÐҵʢ»áRSA Conference½«ÔھɽðɽÀ¿ªá¡Ä»¡£¾ÅÓÎÀϸç¾ýÒѾÏà¼ÌÏò¸÷ÈËÏÈÈÝÁËÈëÑ¡½ñÄêÁ¢ÒìɳºÐµÄʮǿÊ×´´¹«Ë¾£ºElevate Security ¡¢SqreenºÍTala SecurityÈý¼Ò³§ÉÌ£¬ÏÂÃæ½«ÏÈÈݵÄÊÇ£ºTala Security¡£
Ò»¡¢¹«Ë¾ÏÈÈÝ
Tala Security¹«Ë¾½¨ÉèÓÚ2016Ä꣬×ܲ¿Î»ÓÚÃÀ¹ú¼ÓÀû¸£ÄáÑǵĸ¥ÀïÃÉÌØ¡£ÆäÊ×´´È˼æCEO——Aanand KrishnanÔøÊÇSymantec£¨ÈüÃÅÌú¿Ë£©²úÆ·ÖÎÀíµÄ¸ß¼¶×ܼࡣ¾Ýowler.comµÄÊý¾ÝÏÔʾ£¬Tala Security×Ô½¨ÉèÒÔÀ´ÒѾÓÉ4ÂÖÈÚ×Ê£¬×ܹ²³ï¼¯ÁË850ÍòÃÀÔª¡£µ«crunchbase.comµÄÊý¾ÝÔòÅú×¢Tala SecurityÒѾ»ñµÃÁË1460ÍòÃÀÔªµÄÈÚ×Ê¡£
¶þ¡¢²úÆ·ÏÈÈÝ
Tala SecurityµÄ¹Ù·½ÍøÕ¾ÉÏչʾµÄΨÖðÒ»¿î²úÆ·ÊÇ“Client-side Web Application Firewall”£¨Ï¼ò³Æ“Tala WAF”£©¡£²úÆ·Ðû³Æ“¾ßÓÐǿʢµÄÔ¤·ÀÄÜÁ¦¡¢×Ô¶¯»¯¾öÒéÄÜÁ¦ºÍÎÞÓëÂױȵÄÐÔÄÜ£¬¿ÉµÖÓùXSS¡¢Magecart£¬ÒÔ¼°×îÖ÷ÒªµÄ£¬µÖÓùÃ÷ÌìµÄ¹¥»÷”¡£Æ¾Ö¤¹Ù·½ÍøÕ¾µÄÐû´«£¬Tala WAFµÄÖ÷Òª¹¦Ð§ÊǼì²âºÍ·À»¤ÖÖÖÖÕë¶ÔWEB¿Í»§¶Ë£¨ä¯ÀÀÆ÷£©µÄ¹¥»÷¡£

Èý¡¢ÊÖÒÕÆÊÎö
×¢£ºÒÔÏÂËùÓнáÂÛ¾ùͨ¹ý¹ûÕæ×ÊÁÏÕûÀíÍÆ²âµÃ³ö£¬²¢·Ç»ùÓÚ¶ÔÏÖʵ²úÆ·µÄÑо¿£¬¿ÉÄܲ¢²»·´Ó¦Tala WAF²úÆ·µÄÏÖÕæÏàÐΣ¬½ö¹©²Î¿¼¡£
01
ÕûÌåÔË×÷»úÖÆ
´Ó¹Ù·½°×ƤÊéÀ´¿´£¬Tala WAFµÄÔË×÷Ö÷ÒªÒÀÀµÒ»Ð©ä¯ÀÀÆ÷ÄÚÖÃÇå¾²»úÖÆ¡£Ïêϸ°üÀ¨£º
1¡¢ÄÚÈÝÇå¾²Õ½ÂÔ£¨CSP£©
ÓÉ·þÎñ¶ËÖ¸¶¨Õ½ÂÔ£¬¿Í»§¶ËÖ´ÐÐÕ½ÂÔ£¬ÏÞÖÆÍøÒ³¿ÉÒÔ¼ÓÔØµÄÄÚÈÝ£»
Ò»Ñùƽ³£Í¨¹ý“Content-Security-Policy”ÏìÓ¦Êײ¿»ò“<meta>”±êÇ©¾ÙÐÐÉèÖá£
2¡¢×Ó×ÊÔ´ÍêÕûÐÔ£¨SRI£©
¶ÔÍøÒ³ÄÚǶ×ÊÔ´£¨¾ç±¾¡¢Ñùʽ¡¢Í¼Æ¬µÈµÈ£©µÄÍêÕûÐÔ¶ÏÑÔ¡£
3¡¢iFrameɳºÐ
ÏÞÖÆÍøÒ³ÄÚiframeµÄ±íµ¥Ìá½»¡¢¾ç±¾Ö´ÐеȲÙ×÷¡£
4¡¢ReferrerÕ½ÂÔ
×èÖ¹½«ÍøÕ¾URLͨ¹ý“Referer”ÇëÇóÊײ¿Ð¹Â¶¸øÆäËüÍøÕ¾¡£
5¡¢HTTPÑϿᴫÊäÇå¾²£¨HSTS£©
һ׼ʱ¼äÄÚÇ¿ÖÆ¿Í»§¶ËʹÓÃSSL/TLS»á¼ûÍøÕ¾£¬²¢Õ¥È¡Óû§ºöÂÔÇå¾²ÖÒÑÔ¡£
6¡¢Ö¤Êé×°¶©£¨ÔÝÒ룬Certificate Stapling£©
·þÎñ¶Ë»áÔÚSSL/TLSÐÉÌÖи½´øOCSPÐÅÏ¢£¬ÒÔ֤ʵ·þÎñ¶ËÖ¤ÊéµÄÓÐÓÃÐÔ¡£
ÈôÊÇÄܹ»»ñµÃ׼ȷÉèÖã¬CSPµÈ¿Í»§¶ËÇå¾²»úÖÆÎÞÒÉÊÇÓ¦¶ÔÖÖÖÖ¿Í»§¶Ë²à¹¥»÷µÄÓÐÓÃÒªÁì¡£¹Ù·½°×ƤÊéÖгÆTala WAFµÄ½¹µã¹¦Ð§ÊÇ“ÔÚËùÓÐÏÖ´úä¯ÀÀÆ÷Öж¯Ì¬°²ÅŲ¢Ò»Á¬µ÷½â»ùÓÚ±ê×¼µÄÇå¾²²½·¥”¡£
ÓÉ´ËÍÆ²â£¬Tala WAFµÄÒªº¦»úÖÆÓжþ£º
1¡¢×Ô¶¯»¯ÌìÉúºÍµ÷½âÉÏÊöÇå¾²Õ½ÂÔ
ºÍ´ó²¿·ÖµÄACLÒ»Ñù£¬ÒªÑÏ¿áÉèÖÃÕâЩÇå¾²»úÖÆ²¢²»ÊÇÒ»¼þÈÝÒ×µÄÊÂÇé¡£
2¡¢ÍøÂçºÍÆÊÎöÕâЩÇå¾²Õ½ÂÔµÄÖ´Ðмͼ
ÓÉÓÚCSP¾ßÓÐReport»úÖÆ£¬ÒªÍøÂçÆäÖ´ÐмͼӦ¸Ã²»ËãÖØ´ó¡£
×îÒªº¦µÄ²¿·ÖÊÇÌìÉúÇå¾²Õ½ÂÔºÍÆÊÎöÖ´ÐмͼµÄËã·¨¡£¶Ô´Ë£¬µ«¾ÅÓÎÀϸç¾ýûÄÜÕÒµ½ÈκÎÓмÛÖµµÄ¹ûÕæÐÅÏ¢¡£½öÓеÄÐðÊöÀ´×Ô¹Ù·½ÍøÕ¾£º“TalaʹÓÃAI¸¨ÖúÆÊÎöÒýÇæÀ´ÆÀ¹ÀÍøÒ³ÏµÍ³½á¹¹ºÍ¼¯³ÉµÄ50¶à¸öÆæÒìÖ¸±ê”¡£ÖÁÓÚÏêϸʹÓÃÁ˺ÎÖÖÄ£×ÓÔò²»µÃ¶øÖª¡£
02
ϸ½ÚÆÊÎö
ÌØÊâÉùÃ÷£ºÎÒÃDz»»áÔÚδ¾ÊÚȨµÄÇéÐÎ϶ÔËûÈËÍøÕ¾½ÓÄÉÈκνø¹¥ÐÔÐÐΪ¡£ÒÔϲâÊÔ½öͨ¹ýÉó²éºÍÐÞ¸ÄÍâµØÍ¨Ñ¶À´²âÊÔä¯ÀÀÆ÷CSPµÄʵÏÖЧ¹û£¬²¢²»¿ÉÅú×¢Tala SecurityÍøÕ¾±£´æ»ò²»±£´æÈκÎÇå¾²Îó²î¡£
Ö±½Ó»á¼ûTala Security¹Ù·½ÍøÕ¾£¬¿É¼û¸ÃÍøÕ¾µÄCSPÉèÖÃÈçÏ£º

¿É¼ûÊÇÒ»×éºÜÊÇÖØ´óµÄCSP£¬ÎÒÃÇÍÆ²âTala Security¹Ù·½ÍøÕ¾»òÐíʹÓÃÁËTala WAF¡£ÈôÊÇÍÆ²âÊôʵ£¬ÆäÖÐÓÐһЩϸ½ÚÖµµÃ×¢ÖØ£º
CSPÏìÓ¦Êײ¿
ÎÒÃÇÊ×ÏÈ·¢Ã÷£¬ÏìÓ¦Êײ¿ÖÐÉèÖõÄÊÇ“Content-Security-Policy-Report-Only”¶ø·Ç“Content-Security-Policy”¡£ÕâÒâζ×Å×ÝÈ»Ò³ÃæÔªËØ/¾ç±¾Î¥·´ÁËCSPÒ²²»»á±»×èÖ¹£¬¶øÊǽö½ö±¬·¢Ò»ÌõReportÐÅÏ¢£º



ÉÏͼ¿É¼û£¬×ÝÈ»<script>±êǩȱÉÙ“nonce”ÊôÐÔÒ²ÄÜÕý³£Ö´ÐУ¬Ö»Êǻᱬ·¢ReportÐÅÏ¢¡£
ÓÉ´ËÒâÁÏ£¬Tala WAF¿ÉÄÜÒ²ÎÞ·¨ÒÔºÜÊǸߵÄÐÅÐÄÌìÉúÑÏ¿áµÄCSP£¨¶ø²»Ó°ÏìÍøÕ¾Õý³£ÓªÒµ£©¡£Tala WAF¿ÉÄÜ»áÏñÌ¬ÊÆ¸Ð֪ϵͳÄÇÑù£¬Õë¶ÔÍøÂçµ½µÄCSP ReportÐÅϢʹÓÃijÖÖÒì³£¼ì²âÄ£×Ó¡£
CSPÖеÄreport-uri
Tala Security¹Ù·½ÍøÕ¾µÄreport-uriÖ¸ÏòÕ¾ÍâµØµã“https://pilot.tsrs.cloud/r/7d9925a3e964e7eb0ed12fa82e9a3f891ae28372”¡£¸ÃÍøÖ·²»ÖªÎªºÎÎÞ·¨Õý³£»á¼û£¬Ò²ÕýºÃ×èÖ¹²âÊÔÀú³Ì±¬·¢Ðéα¸æ¾¯¡£¾ÅÓÎÀϸç¾ý¶à´ÎʵÑéɾ³ýCookie²¢Ìæ»»IPµØµãºóË¢ÐÂÒ³Ãæ£¬µ«report-uriʼÖÕÎȹ̡£
ÓÉ´ËÍÆ²â£¬Tala WAF¿ÉÄÜÊÇÒÔÔÆ·þÎñÐÎʽÌṩµÄ£¬report-uriÖÐÒ»³¤´®µÄhash¿ÉÄÜΨһ±êʶһ¸ö±»±£»¤µÄÍøÕ¾¡£ÔÆÔÆÒ»À´£¬Óû§ÍâµØ¾ÍÄÜʵÏÖÇáÁ¿»¯°²ÅÅ£¬ÇÒÏÕЩ²»±¬·¢ÐÔÄÜÏûºÄ£¨¹ÙÍøÐû³ÆµÄ“no signatures, no agents”£©£¬µ«Ò²Òâζ×ÅÓû§µÄCSP ReportÐÅÏ¢¿ÉÄܻᱻTala Security¹«Ë¾ÍøÂç¡£
CSPµÄÁ£¶È
Tala Security¹Ù·½ÍøÕ¾µÄ´ó×ÚÒ³Ãæ£¨°üÀ¨HTML¡¢JS¡¢CSS¡¢ÉõÖÁÊÇͼƬ×ÊÔ´ºÍ302Ìø×ªÏìÓ¦£©¶¼Ê¹ÓÃÁËÏàͬµÄCSPÉèÖá£ÒÔÏÂΪ²âÊÔÖеIJ¿·Ö¼Í¼£º

¿É¼û³ýÁËscript-srcÖÐËæ»úÌìÉúµÄnonceÖµÖ®Í⣬ÆäËü×Ö¶ÎËùÓÐÏàͬ¡£
ÓÉ´ËÍÆ²â£¬Tala WAF¿ÉÄÜÊǶÔÍøÕ¾ÕûÌåµÄ×ÊÔ´ÒýÓÃÇéÐξÙÐÐÆÊÎö£¬²¢±¬·¢Ò»×龲̬սÂÔ£¬Ëæºóͨ¹ýÐÞ¸ÄWEBÖÐÐļþÉèÖõȷ½·¨Ó¦Óõ½Õû¸öÍøÕ¾ÖС£°´Àí˵£¬ÕâÊÇÒ»ÖÖÏà¶Ô´ÖÁ£¶ÈµÄÒªÁ죬µ±ÍøÕ¾ÓªÒµ×é³É½ÏÁ¿ÖØ´óʱ£¬¿ÉÄÜÄÑÒÔÓÐÓÃʩչ·À»¤Ð§¹û¡£µ«Ò²²»¿Éɨ³ýÓÐÆäËü»úÖÆÀ´Ë³Ó¦ÕâЩ³¡¾°¡£
ËÄ¡¢ÌØÕ÷±ÈÕÕ
01
ÓÅÊÆºÍÁ¢Òìµã
Tala WAFËÆºõ²¢²»¹Ø×¢ÏñSQL×¢Èë¡¢í§ÒâÎļþÉÏ´«ÕâÑùµÄÎó²î¹¥»÷£¬µ«ËüÄܹ»½«¿Í»§¶ËÇå¾²»úÖÆ»îÐÔ»¯£¬´Ó¶ø¼ì²âºÍ×èÖ¹´ó²¿·Ö³£¼ûµÄ¶Ô¿Í»§¶Ë¹¥»÷£¬ÖîÈçXSS¡¢ÍÚ¿ó¾ç±¾¡¢¹ã¸æ×¢ÈëµÈ¡£×ÝÈ»¹¥»÷ÕßÄܹ»ÔËÓÃÖÖÖÖÎ廨°ËÃŵÄbypass¼¼ÇÉ£¬ÔÚÒ»Ì×ÑÏ¿áÉèÖõÄCSPÑÛǰҲ»á·Ç³£¿àÄÕ¡£
¾ÅÓÎÀϸç¾ýÔøÔÚÓ¦¼±ÏìÓ¦Öжà´ÎÓöµ½Í¨¹ýÍÆ¹ãƽ̨ÌᳫµÄÍøÒ³¸Ä¶¯¹¥»÷£¬ÆäÖдó´ó¶¼ÊôÓÚºÚ²úÁ÷Á¿±äÏÖ£¨¿ÉÒÔ¼òÆÓÃ÷ȷΪ޶ÑòëµÄÒ»ÖÖ£©¡£ÓÉÓÚ¹ã¸æÊðÀíÉ̲ã²ãÍâ°ü£¬×ÝÈ»ÊÇһЩ¿´ÉÏÈ¥ºÜÕý¹æµÄÍÆ¹ãƽ̨Ҳ¿ÉÄÜ»áÌṩ°üÀ¨¶ñÒâ´úÂëµÄ¹ã¸æÄÚÈÝ¡£ÕâЩ¶ñÒâ´úÂë»áǶÈëµ½ËùÓзºÆð¸Ã¹ã¸æµÄÍøÕ¾Ò³ÃæÉÏ£¬²¢´óÃæ»ý¹¥»÷»á¼ûÕâÐ©ÍøÕ¾Ò³ÃæµÄÓû§¡£ÏÖÔÚµÄͨÀýWEBÓ¦Ó÷À»¤ÏµÍ³ºÜÄÑÓëÖ®¶Ô¿¹£¬µ«Tala WAFµÄÒªÁìÀíÓ¦¿ÉÒÔÓÐÓÃÌá·À´ËÀ๥»÷¡£
ÓÖÀýÈôÓÐЩXSSµÄPayload²»»á·ºÆðÔÚͨѶÁ÷Á¿ÖУ¬Ò»ÖÖ³£¼ûÇéÐÎÊÇURLÖГ#”ºóÃæµÄ²¿·Ö£¨Í¨³£ÓÃÀ´¿ØÖÆÒ³Ãæ×Ô¶¯×ª¶¯¶¨Î»£©Ëù×é³ÉµÄDOMÐÍXSS¡£Í¨ÀýÍøÂç·À»¤ÒÀÀµ¶ÔͨѶÁ÷Á¿µÄ¼ì²é£¬Òò´ËºÜÄÑ·¢Ã÷ÕâÖÖXSS¡£µ«×¼È·ÉèÖõÄCSPÄܹ»×èÖ¹´ËÀàÎó²îʹÓá£
ÕûÌåÀ´Ëµ£¬Tala WAFÏà¶ÔÊʺϻ¥ÁªÍøÐÐÒµ£¬ÓÈÆäÊǵçÉÌÁãÊÛÁìÓòµÄÍøÕ¾£¬ÓÉÓÚÕâÐ©ÍøÕ¾ÍùÍù¾ßÓдó×ڵĵÚÈý·½×ÊÔ´ÒýÓá£Tala WAF¿ÉÄÜ»á³ÉΪÏÖÓÐWEBÇå¾²·À»¤ÏµÍ³ÖÐÒ»¸öºÜÊÇÖ÷ÒªµÄÔö²¹¡£
02
ÁÓÊÆÓëÌôÕ½
´Ó¹ûÕæµÄ×ÊÁÏÀ´¿´£¬Tala WAF²¢²»¾ß±¸¶ÔͨÀýÎó²îÈëÇֵķÀÓùÄÜÁ¦£¬Òò´Ë¿ÉÄܲ»Êʺϵ¥¶À°²ÅÅʹÓá£Tala WAF¿ÉÄÜÒ²ÄÑÒÔÔÚÆóÒµÄÚÍøÇéÐÎÖÐʩչÓÅÊÆ——ÄÚ²¿ÍøÕ¾µÄÄÚÈÝ×ÊÔ´´ó¶à¿É¿ØÐԺܸߣ¬ÇÒ½ÓÈëÔÆ·þÎñÒ²ºÜÄÑÌâ¡£
±ðµÄ£¬Tala SecurityÒ²ÃæÁÙһЩÍⲿÌôÕ½¡£ÒýÓÃGartner¸ß¼¶×ܼàÆÊÎöʦDionisio ZumerleµÄ¿´·¨£º“Tala SecurityÃæÁÙÀ´×ÔÌá¹©Ìæ»»ÒªÁìµÄ¹©Ó¦É̵ľºÕù¡£Ò»Ð©Ó¦ÓÃÄÚÖñ£»¤µÄ²¥·ÅÆ÷Ìṩ¿Í»§¶ËJavaScript¼à¿Ø¡£Ò»Ð©RASPºÍWAF¹©Ó¦É̽«CSPºÍSRI¹¦Ð§×÷Ϊ¶Ëµ½¶ËÓ¦ÓóÌÐòÇ徲ƽ̨µÄÒ»²¿·ÖÀ´Ìṩ¡£±ðµÄ£¬ÍøÕ¾ÔËÓªÕß¶Ô¿Í»§¶ËÓ¦ÓóÌÐòµÄ±£»¤ÒâʶÆÕ±éȱ·¦¡£”
Îå¡¢×ܽá
ºã¾ÃÒÔÀ´£¬´ó´ó¶¼ÍøÕ¾Çå¾²½¨Éè¶¼×ÅÖØÓÚ±ÜÃâ·þÎñÆ÷±»ÈëÇÖ»òй¶Êý¾Ý£¬¶øTala SecurityµÄÍ·ÄÔȷʵÌî²¹ÁËÏÖÓÐϵͳµÄÒ»¸ö¶Ì°å£¬µ±Ö®ÎÞÀ¢Îª2020Äê¶ÈRSA´ó»áµÄ10´óSandboxÁ¢Òì³§ÉÌÖ®Ò»¡£²»µ«½öÊÇCSP£¬ÔõÑùÄܹ»¿ìËÙ¶ø×¼È·µØµ÷½âÖÖÖÖÇå¾²Õ½ÂÔÉèÖã¬ÔõÑùÄܹ»×î´ó»¯µØÊ¹ÓúÃÏÖÓеķÀ»¤»úÖÆ£¬¶¼ÊÇÖµµÃÎÒÃÇÉîÈë˼Ë÷µÄÎÊÌâ¡£
· ²Î¿¼Á´½Ó ·
[1] https://www.talasecurity.io/

¾ÅÓÎÀϸçÔÆ







