在实际提权过程中,高防服务器常常需要通过 Webshell来履行各种命令,以获取操作系统(内网系统)服务器所开启的端口、过程、系统服务、已安装程序、系统安全设置等信息。对这些信息的探测都是建立在可以履行基础命令的 Webshelll上的。
获取IP地址信息
IP地址重要有两种,一种是内网IP地址,另一种是外网IP地址。在渗透提权过程中,如果遇到外网IP地址,可以在该服务器上启用3389后直接登录;如果遇到内网IP地址,则需要配合一些代理程序(例如lcx等)才干登录。
IP地址的获取比较简略,有的 Webshell上会自己显示(但仅显示IP地址)。在Windows中应用“ ipconfig/al”命令,在 Linux中应用" ifconfig-a”命令,通过显示的信息来获取IP地址。如图1所示,获取 Windows下某服务器的IP地址信息,其中包含了很多重要信息。本例是无线网络,如果是域内服务器,则可以通过DNS等信息获取DNS服务器IP地址等。
获取端口信息
我们习惯应用“ netstat-an”命令来获取目前服务器所有端口的开放情况及网络连接情况。端口开放情况也可以通过NMap等扫描软件获取。应用 Netstat一般是在有必定权限的情况下,例如获取了3389开放的端口等。 Netstat可以附加一些参数来显示更加详细的信息,具体如下。
1.显示包含于创立每个连接或监听端口的可履行组件。在某些情况下,已知可履行组件拥有多个独立组件,且包含于创立连接或监听端口的组件序列将被显示。履行此选项可能需要很长时间,如果没有足够的权限,可能会失败。
2.显示与每个连接相干的所属过程ID。
3.与“-b”选项一起应用时将显示包含于为所有可履行组件创立连接或监听端口的组件。
netstat-anb”命令用于获取过程号(PID)、端口开放情况、开放端口程序及服务组件等信息。“ netstat-ano”命令用于获取TCP/UDP协议信息、端口和过程号。“ netstat-anvb”命令用于获取过程名、对应的过程PID、端口所用的协议、调用的可履行组件、相应的组件和第三方过程的系统路径。