主页 > 网络知识 > 细说渗透江湖之披荆斩棘(2)

细说渗透江湖之披荆斩棘(2)

 

细说渗透江湖之披荆斩棘

 

这里先获取path路径。

 

细说渗透江湖之披荆斩棘

 

 

细说渗透江湖之披荆斩棘

 

此处解析上传的恶意sql文件,此处$sql为我们的恶意sql语句,经过了一处正则匹配,然而并没什么用。

 

细说渗透江湖之披荆斩棘

 

 

细说渗透江湖之披荆斩棘

 

从$sql=$trasfer->getQuery($sql)开始一行一行执行我们的sql语句直至完成操作。

 

细说渗透江湖之披荆斩棘

 

 

细说渗透江湖之披荆斩棘

 

但是利用SQL语句写shell,需要知道绝对路径和高权限,不管那么多,先去找找绝对路径,万一这个点可以利用岂不是美滋滋。

Getshell

返回目标寻找绝对路径,在翻js时,由于目标明确直接搜索path关键字找到了我所需要的东西。

 

细说渗透江湖之披荆斩棘

 

接下就是去构造一个SQL文件写入小马。

 

细说渗透江湖之披荆斩棘

 

执行导入,写入小马,这里用一句话上传了冰蝎,连接

 

细说渗透江湖之披荆斩棘

 

一切都这么顺理成章,简直就是上帝的宠儿。然而现实它狠狠的给了我一巴掌

 

细说渗透江湖之披荆斩棘

 

 

细说渗透江湖之披荆斩棘

 

发现不能执行命令,无法执行命令的 webshell 是毫无意义的,查看phpinfo

 

细说渗透江湖之披荆斩棘

 

禁用函数:

 

 

passthru,exec,system,chroot,chgrp,chown,shell_exec,proc_open,proc_get_status,popen,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru

 

发现没有禁用putenv,尝试Bypass disable_functions,利用环境变量 LD_PRELOAD 劫持系统函数,让外部程序加载恶意 .so,达到执行系统命令的效果。php文件是需要上传到目标的执行命令的脚本.so是编译后的bypass_disablefunc_x64.so

 

细说渗透江湖之披荆斩棘

 

基本原理

在 Linux 中已安装并启用 sendmail 程序。php 的 mail() 函数在执行过程中会默认调用系统程序 /usr/sbin/sendmail,而 /usr/sbin/sendmail 会调用 getuid()。通过 LD_PRELOAD 的方式来劫持 getuid(),再用 mail() 函数来触发 sendmail 程序进而执行被劫持的 getuid(),从而就能执行恶意代码了。

说点什么吧
  • 全部评论(0
    还没有评论,快来抢沙发吧!