2008 server-2:
PHPstudy2014:Apache+PHP5.3
3.2 PHPOA集成环境
Linux Centos 2.6.32
4事理剖析4.1 命令实行基本事理剖析
运用有时须要调用一些实行系统命令的函数,如PHP中的system、exec、shell_exec、
passthru、popen、proc_popen等,当用户能掌握这些函数中的参数时,就可以将恶意系统命令拼接到正常命令中,从而造成命令实行攻击。
命令实行漏洞分为三类: ①代码层过滤不严格 ②系统漏洞造成命令注入③调用第三方组件存在代码实行漏洞
4.2 文件上传基本事理剖析文件上传漏洞是指用户上传了一个可实行的脚本文件,并通过此脚本文件得到了实行做事器端命令的能力。这种攻击办法是最为直接和有效的,"文件上传"本身没有问题,有问题的是文件上传后,做事器怎么处理、阐明文件。如果做事器的处理逻辑做的不足安全,则会导致严重的后果。
要完成这个攻击,要知足以下几个条件:
首先,上传的文件能够被Web容器阐明实行。以是文件上传后所在的目录假如Web容器所覆盖到的路径。其次,用户能够从Web上访问这个文件。如果文件上传了,但用户无法通过Web访问,或者无法得到Web容器阐明这个脚本,那么也不能称之为漏洞。末了,用户上传的文件若被安全检讨、格式化、图片压缩等功能改变了内容,则也可能导致攻击不堪利。
5渗透测试过程5.1 海洋网站拿WebShell1.通过搜索引擎查出海洋CMS存在文件包含漏洞,payload如下图所示:
图1
2. 本次渗透将密码改为mm,并用菜刀连接,连接时选择脚本类型为PHP(eval),得到本网站的WebShell:
图2
图3
图4
3. 在菜刀首页右击链接打开虚拟终端,查看本网站做事器的IP:
图5
图6
通过查看IP得知,本做事器除了192.168.0.0网段,还有一个192.168.1.0网段,知道本做事器内网网段之后,可以查看该内网还有哪些IP,即还有哪些做事器,这样我们可以连续扩大本次渗透测试的成果。
4、 查看内网有哪些做事器:
图7
通过arp -a 这条命令得知内网还有一个192.168.1.2的做事器,但由于和攻击方IP 192.168.0.43不属于同一个网段,是无法直接访问192.168.1.2做事器的,故须要利用海洋网站作为代理进行连接。
5.2 设代理连接内网1.在海洋做事器上传tunnel.nosocket.php文件,通过浏览器访问该文件,并拷贝该URL以备后面利用。
图8
图9
访问tunnel.nosocket.php文件页面显示All seems fine,表示该文件没问题。
2.利用reGeorgSocksProxy.py为代理做准备:
图10
图11
在reGeorgSocksProxy.py所在的文件夹内Shift+右击打开命令窗口,并输入python reGeorgSocksProxy -p 8866 -u "http://192.168.0.45/tunnel.nosocket.php" ,-u后输入的URL为刚才拷贝的URL,命令窗口涌现All seems fine即为操作精确。
3.利用Proxifier工具设置代理:
图12
图13
安装完Proxifier工具后,打开该工具添加代理端口8866,并利用SOCKS5代理,设置完成后即可成功访问192.168.1.2的做事器,如下图:
图14
5.3 PHPOA拿WebShell1. 通过搜索引擎得知PHPOA有文件上传漏洞,链接为http://192.168.1.2/ntko/upLoadOfficeFile.php:
图15
图16
访问该链接显示并未上传文件或者并不是上传的文件,则须要我们自己布局上传地址。
2. 通过编写html文件创建上传页面,内容如下图:
图17
3.用浏览器访问我们写好的html文件,并在第一各浏览上传文件处上传.txt文件,在第二个浏览上传文件处上传我们的木马:
图18
图19
显示木马保存的路径,我们就可以用浏览器访问并用菜刀连接了。
4. 访问该木马,用菜刀进行连接,得到内网做事器的WebShell:
图20
图21
5.4 对PHPOA进行提权1.在虚拟终端中查看当前用户:
图22
通过上图可知我们并不是root权限,那么我们接下来就进行提权。
2. 查看做事器开放的端口,创造22端口即远程端口开放着:
图23
3. 我们可以利用Hydra工具进行SSH密码暴力破解,以得到管理员的用户名和密码:
图24
暴破得到管理员的用户名为root,密码为zmxncbv,即我们得到了管理员的权限。
6安全加固建议
1. 在编写网站源代码时能把代码敲全就只管即便不要利用文件包含,否则及其随意马虎存在文件包含漏洞。
2. 上传文件的类型一定要进行严格的限定,不许可上传php类型的文件。
3. 对做事器里的目录和文件只管即便设置非管理员禁止查看的权限,为黑客提权增加难度。
4. 网站管理员要提高当心性,只管即便将各种密码繁芜度设置的高一些,对主要文件也要进行加密。
7心得体会1.千里之堤毁于蚁穴,大概一个特殊不显眼的知识点就可以对巨大的网络系统造成毁坏,以是我们要尽自己的能力理解更多的知识。
2.心腹知彼百战百胜,渗透之前要理解目标系统的各种特性,大概你理解到的解析,上传,路径的特性,就可以拿下全体系统。
3.对目标系统的网络的事情必不可少,比如目标系统开启的端口,用户,版本等等。
4.思路对一次成功的渗透测试十分主要,只有思路精确且清晰,渗透测试过程才能完成。