一、渗透测试的目的
-
了解入侵者可能利用的途径
-
信息不当;
-
网络架构的设计问题;
-
防火墙的设计问题;
-
系统及应用程序的漏洞;
-
系统及应用程序的设置问题。
-
了解系统以及网络安全强度
-
评估具有同等能力的入侵者大约需花费多久的时间才能入侵成功;
-
评估遭到入侵后可能造成的影响;
-
评估信息通信安全政策的落实程度。
-
了解弱点、强化安全
-
强化系统及网络的安全;
-
降低遭到入侵后的损失。
二、渗透测试中的方法概念
根据对测试网站的熟悉程度,渗透测试可以分为以下几种。
1. 黑箱
在只知道受测目标名称或者URL的情况下,测试者在测试活动中必须自行搜集其他相关信息,就像拿到一只不透的黑箱子,只知道箱子的存在,而不知道箱子里具体装的是什么。使用黑箱测试,是在考验测试者的黑客技巧,因为这种情况最近进黑客攻击的情况。
2. 白箱
测试者几乎完全知道系统的信息,这样可以把精力尽可能的放在找出受测系统的漏洞和弱点,就好比拿到一只透明的箱子,不仅知道箱子的存在,也知道箱子里面装的是什么。利用这种方法,在实现拟定好安全策略的情况下可以检验系统的安全防护能力。
3. 灰箱
当测试授权方(也可以成为客户、委托方、雇主或者受测方)不清楚受测系统的信息(例如:外包,二次开发),也无法提供完整的受测系统信息的情况下,测试者无法实现得知受测系统的情况,但是授权方还是尽可能协助测试者的了解受测系统的信息。这种情况就是介于白箱和黑箱之间的情况。
4. 双黑箱
授权方想尽可能的模拟黑客攻击的情况,并且要测试系统的防护能力和相关人员(包括运维人员、安全员等人员)的警觉性和应变能力。这是授权方可以授权测试者对系统进行渗透测试,并不告知其它相关人员,而且也不告知测试者系统的具体情况。这种测试者和相关人员在暗地里较劲的测试方法成为双黑箱测试,也称作双盲测试。
5. 双白箱
测试者和相关人员都知道对方的存在,主要目的是协助授权方找出并确认系统漏洞。
三、所需入门知识
阅读本教程须具备以下知识:
1. HTML语法与网页运行原理;
2. JavaScript;
3. 命令行界面的操作(Windows、Linux);
4. SQL语法;
5. 网络操作命令(Telnet、Ping、nslookup、Tracert);
6. 脚本语言(Python、Ruby、Perl)的部署与执行。
四、 渗透测试注意事项
1. 渗透测试虽然是以黑客的角度、工具和方法进行的,但属于信息安全防护的手段;
2. 渗透测试前必须取得授权方的许可,方可进行;
3. 在未取得授权方的许可前,不可进行测试,以免触犯刑法。
作者声明:
1、本系列教程总结自陈明照编著的《网站渗透测试实战入门》;
2、本系列教程只作为给人交流使用,请勿发表出版等其他盈利行为;
3、如需《网站渗透测试实战入门》,请到正规网站/书店购买