渗透测试是什么 渗透测试有什么特点
渗透测试是什么?
渗透测试,是为了证明网络防御按照预期计划正常运行而提供的一种机制。不妨假设,你的公司定期更新安全策略和程序,时时给系统打补丁,并采用了漏洞扫描器等工具,以确保所有补丁都已打上。如果你早已做到了这些,为什么还要请外方进行审查或渗透测试呢?因为,渗透测试能够独立地检查你的网络策略,换句话说,就是给你的系统安了一双眼睛。而且,进行这类测试的,都是寻找网络系统安全漏洞的专业人士。
渗透测试有什么特点?
1、信息收集
信息收集分析是所有入侵攻击的前提/前奏/基础。通过对网络信息收集分析,可以相应地、有针对性地制定模拟黑客入侵攻击的计划,以提高入侵的成功率、减小暴露或被发现的几率。信息收集的方法包括主机网络扫描、操作类型判别、应用判别、账号扫描、配置判别等等。
2、端口扫描
通过对目标地址的TCP/UDP端口扫描,确定其所开放的服务的数量和类型,这是所有渗透测试的基础。通过端口扫描,可以基本确定一个系统的基本信息,结合测试人员的经验可以确定其可能存在,以及被利用的安全弱点,为进行深层次的渗透提供依据。
3、权限提升
通过收集信息和分析,存在两种可能性,其一是目标系统存在重大弱点:测试人员可以直接控制目标系统,然后直接调查目标系统中的弱点分布、原因,形成最终的测试报告;其二是目标系统没有远程重大弱点,但是可以获得远程普通权限,这时测试人员可以通过该普通权限进一步收集目标系统信息。接下来,尽最大努力获取本地权限,收集本地资料信息,寻求本地权限升级的机会。这些不停的信息收集分析、权限升级的结果将构成此次项目整个渗透测试过程的输出。
4、溢出测试
当测试人员无法直接利用帐户口令登陆系统时,也会采用系统溢出的方法直接获得系统控制权限,此方法有时会导致系统死机或从新启动,但不会导致系统数据丢失,如出现死机等故障,只要将系统从新启动并开启原有服务即可。一般情况下,如果未授权,将不会进行此项测试。
5、WEB应用测试
Web脚本及应用测试专门针对Web及数据库服务器进行。根据最新的统计,脚本安全弱点为当前Web系统,尤其是存在动态内容的Web系统比较严重的安全弱点之一。利用脚本相关弱点轻则可以获取系统其他目录的访问权限,重则将有可能取得系统的控制权限。因此对于含有动态页面的Web、数据库等系统,Web脚本及应用测试将是必不可少的一个环节。
6、SQL注入攻击
SQL注入常见于应用了SQL 数据库后端的网站服务器,入侵者通过提交某些特殊SQL语句,最终可能获取、篡改、控制网站服务器端数据库中的内容。此类漏洞是入侵者最常用的入侵方式之一。
7、检测页面隐藏字段
网站应用系统常采用隐藏字段存储信息。许多基于网站的电子商务应用程序用隐藏字段来存储商品价格、用户名、密码等敏感内容。恶意用户通过操作隐藏字段内容达到恶意交易和窃取信息等行为,是一种非常危险的漏洞。
8、跨站攻击
入侵者可以借助网站来攻击访问此网站的终端用户,来获得用户口令或使用站点挂马来控制客户端。
9、Cookie利用
网站应用系统常使用cookies 机制在客户端主机上保存某些信息,例如用户ID、口令、时戳等。入侵者可能通过篡改cookies 内容,获取用户的账号,导致严重的后果。
渗透检测的优缺点
渗透检测的优缺点:
1、优点
(1)渗透检测可以检测(钢、耐热合金、铝合金、镁合金、铜合金)和非金属(陶瓷、塑料)工件的表面开口缺陷,例如,裂纹、疏松、气孔、夹渣、冷隔、折叠和氧化斑疤等。这些表面开口缺陷,特别是细微的表面开口缺陷,一般情况下,直接目视检查是难以发现的。
(2)渗透检测不受被控工件化学成分限制。渗透检测可以检查磁性材料,也可以检查非磁性材料;可以检查 黑色金属,也可以检查有色金属,还可以检查非金属。
(3)渗透检测不受被检工件结构限制。渗透检测可以检查焊接件或铸件,也可以检查压延件和锻件,还可以检查机械加工件。
(4)渗透检测不受缺陷形状(线性缺陷或体积型缺陷)、尺寸和方向的限制。只需要一次渗透检测,即可同时检查开口于表面的所有缺陷。
2、缺点
但是,渗透检测无法或难以检查多孔的材料,例如粉末冶金工件;也不适用于检查因外来因素造成开口或堵塞的缺陷,例如工件经喷丸处理或喷砂,则可能堵塞表面缺陷的“开口”,难以定量的控制检测操作质量,多凭检测人员的经验、认真程度和视力的敏锐程度。
渗透检测(penetranttesting,缩写符号为PT),又称渗透探伤,是一种以毛细作用原理为基础的检查表面开口缺陷的无损检测方法。
工作原理:
工件表面被施涂含有荧光染料或者着色染料的渗透剂后,在毛细作用下,经过一定时间,渗透剂可以渗入表面开口缺陷中;去除工作表面多余的渗透剂,经过干燥后,再在工件表面施涂吸附介质——显像剂;同样在毛细作用下,显像剂将吸引缺陷中的渗透剂,即渗透剂回渗到显像中;在一定的光源下(黑光或白光),缺陷处的渗透剂痕迹被显示(黄绿色荧光或鲜艳红色),从而探测出缺陷的形貌及分布状态。
适用范围及特点:
渗透检测可广泛应用于检测大部分的非吸收性物料的表面开口缺陷,如钢铁,有色金属,陶瓷及塑料等,对于形状复杂的缺陷也可一次性全面检测。主要用于裂纹、白点、疏松、夹杂物等缺陷的检测无需额外设备,对应用于现场检测来说,常使用便携式的灌装渗透检测剂,包括 渗透剂、清洗剂和显像剂这三个部份,便于现场使用。渗透检测的缺陷显示很直观,能大致确定缺陷的性质, 检测灵敏度较高,但检测速度慢,因使用的检测剂为化学试剂,对人的健康和环境有较大的影响。
渗透检测特别适合野外现场检测,因其可以不用水电。渗透检测虽然只能检测表面开口缺陷,但检测却不受工件 几何形状和缺陷方向的影响,只需要进行一次检测就可以完成对缺陷的检测。
什么是渗透测试?如何做渗透测试?
渗透测试,是为了证明网络防御按照预期计划正常运行而提供的一种机制。不妨假设,你的公司定期更新安全策略和程序,时时给系统打补丁,并采用了漏洞扫描器等工具,以确保所有补丁都已打上。如果你早已做到了这些,为什么还要请外方进行审查或渗透测试呢?因为,渗透测试能够独立地检查你的网络策略,换句话说,就是给你的系统安了一双眼睛。而且,进行这类测试的,都是寻找网络系统安全漏洞的专业人士。
渗透测试一定要遵循软件测试基本流程,要知道测试过程和目标特殊,在具体实施步骤上主要包含以下几步:
1、明确目标
当测试人员拿到需要做渗透测试的项目时,首先确定测试需求,如测试是针对业务逻辑漏洞,还是针对人员管理权限漏洞等;然后确定客户要求渗透测试的范围,如ip段、域名、整站渗透或者部分模块渗透等;最后确定渗透测试规则,如能够渗透到什么程度,是确定漏洞为止还是继续利用漏洞进行更进一步的测试,是否允许破坏数据、是否能够提升权限等。
2、收集信息
在信息收集阶段要尽量收集关于项目软件的各种信息。比如:对于一个Web应用程序,要收集脚本类型、服务器类型、数据库类型以及项目所用到的框架、开源软件等。信息收集对于渗透测试来说非常重要,只要掌握目标程序足够多的信息,才能更好地进行漏洞检测。
信息收集的方式可分为以下2种:主动收集、被动收集。
3、扫描漏洞
在这个阶段,综合分析收集到的信息,借助扫描工具对目标程序进行扫描,查找存在的安全漏洞。
4、验证漏洞
在扫描漏洞阶段,测试人员会得到很多关于目标程序的安全漏洞,但这些漏洞有误报,需要测试人员结合实际情况,搭建模拟测试环境对这些安全漏洞进行验证。被确认的安全漏洞才能被利用执行攻击。
5、分析信息
经过验证的安全漏洞就可以被利用起来向目标程序发起攻击,但是不同的安全漏洞,攻击机制不同,针对不同的安全漏洞需要进一步分析,制定一个详细的攻击计划,这样才能保证测试顺利执行。
6、渗透攻击
渗透攻击实际是对目标程序进行的真正攻击,为了达到测试的目的,像是获取用户账号密码、截取目标程序传输数据等。渗透测试是一次性测试,在攻击完成后能够执行清理工作。
7、整理信息
渗透攻击完成后,整理攻击所获得的信息,为后边编写测试报告提供依据。
8、编写报告
测试完成之后要编写报告,阐述项目安全测试目标、信息收集方式、漏洞扫描工具以及漏洞情况、攻击计划、实际攻击结果等。此外,还要对目标程序存在的漏洞进行分析,提供安全有效的解决办法。
0条大神的评论