通过自己搭了一个网站环境来,具体阐述一下web网站的完整渗透测试过程,有不足的还望指正。
1.测试网站的安全性
点击进入事先搭好的网站,选择其中随意的一个链接点击进入。如图所示
进行sql注入漏洞测试在链接的后面加上’出现报错,进行注入and 1=1显示正常,and 1=2注入出现报错
以上结果说明该网站存在sql注入漏洞
2.利用sql注入漏洞破解后台管理员的账号和密码
手工猜解过于麻烦使用sql注入工具就会快多了,这次使用的是啊d工具
![image](http://ww2.sinaimg.cn/large/0069oIoUgy1fp3c08b0olj30af06xwf3.jpg)
通过使用工具逐一猜解得到表名,字段名,和其中的内容。用户名为linhai密码是一串经过MD5加密后的数字串
可以通过在线MD5解密网站对字符串进行解密或者用专门的MD5解密工具进行解密,解密得到的密码是123456
3.登陆管理员界面
得到了管理员的密码和账号那接下来的任务就是要找到登陆管理员界面的页面。可以使用御剑这个扫描工具来扫描得到管理员
登陆页面。扫描得到如下结果。
登陆管理员账号进入网站后台。
4.拿下网站的webshell
拿下网站的shell有很多种方法,具体要看后台是什么情况。就现在这个网站而言,先在文章管理中上传图片
上传了一个.aspx格式的脚本文件发现不能上传成功,那就将后缀改成.jpg格式上传成功复制下图片上传后的路径
我们将文件上传后,由于上传的是图片不能解析成脚本执行,在我们的这个网站有一个数据库备份功能,可以通过数据备份的方式重新命名脚本文件
使其能够被执行。
然后访问http://192.168.1.3/db/1.aspx输入脚本中所写的密码就拿到了webshell
5.提权拿服务器权限
在webshell里面有端口扫描我们进行端口扫描发现目标系统开放着43985端口,那就意味着我们可以用server-u来进行提权
在cmdshell中输入net user aaa 123456 /add来添加用户,net localgroup administrator aaa/add 来将之前创建的用户加入管理员。
在用net user查看得到为管理员的aaa用户
由于在之前端口扫描得到3389端口开放,因此可以利用刚创建的用户和账号远程登录目标系统。