前提条件:
如果要进行渗透测试必须要进行授权,否则你将受到法律的制裁!!!
1.确定目标
一般来说可能攻击的是一个公司或企业的内部网络,针对的大部分是服务器。或者是一个网站或网站群,或者是一些软件应用或者APP,这类的话一般都是获取应用的后台服务器的权限
2.信息收集
信息收集是整个渗透测试最重要的一步,你要把你要攻击的目标全部探索清楚,才能更好的攻击。信息收集的越丰富,内容或情报收集的越多,攻击的成功率就越高。
(1)操作系统
我们要确定对方是什么操作系统,在之后的提权中才能对症下药,此外我们还可以通过操作系统的版本确定可能存在哪些漏洞。这个需要大家多了解一些漏洞。比方说Windows10爆出来个蓝屏漏洞,还有永恒之蓝,CVE-2019-0708远程桌面漏洞等漏洞都可以尝试,运气好的话可能可以直接getshell。
工具一般是像Nmap之类的,-O
直接扫描系统版本。
(2)服务器的软件和套件
这就很多啦,涉及到各方面。例如网站用什么CMS(内容管理系统,说白了就是网站的模板)
中间件(Nginx,Apache,Tomcat,weblogic)
数据库(mysql,redis,mssql)
脚本语言(php,jsp,asp,aspx)
软件(微信,Chrome)
网络服务(ssh,ftp)
这些基本上都可以通过指纹扫描软件或者端口来识别。
(3) 网站信息收集
敏感文件
漏洞
敏感文件包括phpinfo,mysql.ini等,通过这些我们可以了解到很多我们必须知道的东西,包括绝对路径,服务器配置等。
此外我们可以通过一些自动化的工具扫描一下漏洞,例如AWVs,这样我们可以大致扫描到这些漏洞,以供我们后期攻击利用
(4)旁站和内网环境
旁站是扫描一台服务器上有没有运行多个网站,那么只要拿下防护最差的一个网站,就可以拿下其他站。然后我们还需要通过一些软件来扫描网络内部的环境,比方说是工作组环境还是域环境,这些都很重要。还有对方网络内部有多少计算机,其中哪些是服务器,开启了哪些服务,这都需要知道。
(5)系统漏洞扫描
MSF或者一些软件可以批量扫描一个内网段的漏洞,然后把可以利用的服务器给你列出来。一些新出来的漏洞,黑客们很快就会在网上公布EXP,我们可以用EXP批量扫描漏洞,一些冷门漏洞基本通杀。
3.漏洞探测与攻击
这个步骤我一般和信息收集同时处理,就是把一些可能存在的漏洞都试一遍。
WEB漏洞:
SQL注入漏洞
XSS跨站脚本攻击漏洞
CSRF跨站请求伪造漏洞
文件上传漏洞
暴力破解漏洞中间件漏洞
docker逃逸
4.提权
提权就是权限提升,例如留下MSF后门或CS后门等。
第一步提权是留下后门:
提权工具:传送门
我们拿下一台服务器后,就要把权限维持住,通常来说是留后门,包括WEB和系统后门,然后创建一些隐藏的账户供我们下次进系统。提权是利用漏洞把我们的权限提升到SYSTEM最高权限,从而控制服务器
5.清理痕迹
我们需要把我们入侵的痕迹清理一下,但是一般来说清理痕迹基本上没什么太大作用,因为如果管理员想查总是能查出来的,而清理痕迹最多是拖延时间。最好还是使用代理服务器或者身份隐藏防止被管理员发现。
总结
1.确定目标
2.信息收集
3.漏洞探测
4.漏洞利用getshell
5.权限提升
6.清理痕迹
7.提交漏洞或上交报告