主页 > 网络知识 > 基于ThinkPHP的CMS审计思路(2)

基于ThinkPHP的CMS审计思路(2)

 

1589090385_5eb798510a726.png!small

 

 

1589090657_5eb79961b23eb.png!small

 

 

1589090914_5eb79a6289cb7.png!small

 

4.->order("可控参数")->find()

$username=I("username");$order=I("order");$data=M("users")->where(array("username"=>$username))->order($order)->find();

测试代码如上,传入username=admin&order[updatexml(1,concat(0x3a,user()),1)]

 

1589092405_5eb7a03580fe2.png!small

最后的sql语句如下

 

 

1589092422_5eb7a0468793f.png!small

 

了解了几个tp3.2.3的sql注入后,就可以搜索这些关键词来寻找sql注入

0x02 全局搜索sql注入

正则学的不是很好,所以这里全局搜索虽然支持正则,但是没去用,只能写点简单的关键词来搜索,还望师傅们指点指点

全局搜索->find(

 

1589096722_5eb7b11252939.png!small

 

1.后台Ad控制器sql注入

 

1589096863_5eb7b19fa940c.png!small

 

点进去第一条发现where()内的$id可控,“ad_id=$id”,可能不需要单引号闭合就可以sql注入

 

1589096917_5eb7b1d541ae8.png!small

 

先随便传个参数看看sql语句是怎样的

 

1589097580_5eb7b46c4ee54.png!small

 

竟然这样,就可以用括号闭合来注入了

 

1589097745_5eb7b51138b36.png!small

 

2.前台register控制器sql注入

 

1589098283_5eb7b72b6c2b5.png!small

 

看看$where是否可控

 

1589099928_5eb7bd987ecc6.png!small

 

于是构造payload如下

 

1589100057_5eb7be1971ba5.png!small

 

3.前台login控制器sql注入
说点什么吧
  • 全部评论(0
    还没有评论,快来抢沙发吧!