欢迎访问中国软件评测中心!

首页> 核心业务> 测试

测试

渗透测试

 
  什么是渗透测试?
  渗透测试(Penetration Test)是完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标网络/系统/主机/应用的安全性作深入的探测,发现信息系统最脆弱的环节。渗透测试的目的在于:让网站的管理人员直观了解该系统在技术层面所面临的主要安全威胁和重要安全隐患。
  渗透测试可以分为:应用程序渗透、设备漏洞扫描及渗透测试、系统渗透测试。
 
  渗透测试都做什么?
  ● 信息收集
  信息收集分析是所有入侵攻击的前提/前奏/基础。通过对网络信息收集分析,可以相应地、有针对性地制定模拟黑客入侵攻击的计划,以提高入侵的成功率、减小暴露或被发现的几率。信息收集的方法包括主机网络扫描、操作类型判别、应用判别、账号扫描、配置判别等等。
  ● 端口扫描
  通过对目标地址的TCP/UDP端口扫描,确定其所开放的服务的数量和类型,这是所有渗透测试的基础。通过端口扫描,可以基本确定一个系统的基本信息,结合测试人员的经验可以确定其可能存在,以及被利用的安全弱点,为进行深层次的渗透提供依据。
  ● 权限提升
  通过收集信息和分析,存在两种可能性,其一是目标系统存在重大弱点:测试人员可以直接控制目标系统,然后直接调查目标系统中的弱点分布、原因,形成最终的测试报告;其二是目标系统没有远程重大弱点,但是可以获得远程普通权限,这时测试人员可以通过该普通权限进一步收集目标系统信息。接下来,尽最大努力获取本地权限,收集本地资料信息,寻求本地权限升级的机会。这些不停的信息收集分析、权限升级的结果将构成此次项目整个渗透测试过程的输出。
  ● 溢出测试
  当测试人员无法直接利用帐户口令登陆系统时,也会采用系统溢出的方法直接获得系统控制权限,此方法有时会导致系统死机或从新启动,但不会导致系统数据丢失,如出现死机等故障,只要将系统从新启动并开启原有服务即可。一般情况下,如果未授权,将不会进行此项测试。
  ● WEB应用测试
  Web脚本及应用测试专门针对Web及数据库服务器进行。根据最新的统计,脚本安全弱点为当前Web系统,尤其是存在动态内容的Web系统比较严重的安全弱点之一。利用脚本相关弱点轻则可以获取系统其他目录的访问权限,重则将有可能取得系统的控制权限。因此对于含有动态页面的Web、数据库等系统,Web脚本及应用测试将是必不可少的一个环节。
  ● SQL注入攻击
  SQL注入常见于应用了SQL 数据库后端的网站服务器,入侵者通过提交某些特殊SQL语句,最终可能获取、篡改、控制网站服务器端数据库中的内容。此类漏洞是入侵者最常用的入侵方式之一。
  ● 检测页面隐藏字段
  网站应用系统常采用隐藏字段存储信息。许多基于网站的电子商务应用程序用隐藏字段来存储商品价格、用户名、密码等敏感内容。恶意用户通过操作隐藏字段内容达到恶意交易和窃取信息等行为,是一种非常危险的漏洞。
  ● 跨站攻击
入侵者可以借助网站来攻击访问此网站的终端用户,来获得用户口令或使用站点挂马来控制客户端。
  ● Cookie利用
网站应用系统常使用cookies 机制在客户端主机上保存某些信息,例如用户ID、口令、时戳等。入侵者可能通过篡改cookies 内容,获取用户的账号,导致严重的后果。
  ● 后门程序检查
系统开发过程中遗留的后门和调试选项可能被入侵者所利用,导致入侵者轻易地从捷径实施攻击。
  ● 第三方软件误配置
  第三方软件的错误设置可能导致入侵者利用该漏洞构造不同类型的入侵攻击。
 
  渗透测试前需要做什么准备?如何规避风险?
  渗透性测试的对象主要为网络设备、主机操作系统、数据库系统和应用系统。在测试过程中无法避免的会发生很多可预见和不可预见的风险,因此在测试之前需了解目标系统介绍、重点保护对象及特性,测试方必须提供规避措施以免对系统造成重大的影响。如:
  1. 测试验证时间放在业务量最小的时间进行;
  2. 测试执行前确保相关数据进行备份;
  3. 所有测试在执行前和维护人员进行沟通确认;
  4. 在测试过程中出现异常情况时立即停止测试并及时恢复系统;
  5. 对原始业务系统进行一个完全的镜像环境,在镜像环境上进行渗透性测试
 
  渗透性测试是否等同于风险评估?
  不是。可以暂时理解成渗透测试属于风险评估的一部分。事实上,风险评估远比渗透测试复杂的多,它除渗透测试外还要加上资产识别,威胁分析、风险计算等环节。除此之外,也还包括了人工审查以及后期的性能优化、安全加固等工作内容。
 
  典型案例
  交通运输部网站渗透测试
  中国电子商务网渗透测试
  北京市建设委员会网站渗透测试
  北京市国土资源局系统网站渗透测试
  北京市海淀区政协门户网站渗透测
  ……
 
3285602732