发布新日志

  • 安全测试概念

    2011-03-07 10:31:15

    (转文)

    一、什么是安全性测试

    安全性测试(security testing)是有关验证应用程序的安全服务和识别潜在安全性缺陷的过程。

    注意:安全性测试并不最终证明应用程序是安全的,而是用于验证所设立策略的有效性,这些对策是基于威胁分析阶段所做的假设而选择的。

    以下是我读<<软件评测试教程>>中的Web安全性测试章节内容,并进行修改的笔记,前面看了好多朋友写的,不过不是很全,希望对大家有所帮助,建议大家还是买本<<软件评测试教程>>此书绝对物超所值^_^

    WEB
    安全性测试
    一个完整的WEB安全性测试可以从部署与基础结构、输入验证、身份验证、授权、配置管理、敏感数据、会话管理、加密。参数操作、异常管理、审核和日志记录等几个方面入手。
    1.        
    安全体系测试
    1)        
    部署与基础结构
    l        
    网络是否提供了安全的通信
    l        
    部署拓扑结构是否包括内部的防火墙
    l        
    部署拓扑结构中是否包括远程应用程序服务器
    l        
    基础结构安全性需求的限制是什么
    l        
    目标环境支持怎样的信任级别
    2)        
    输入验证
    l        
    如何验证输入
    A.        
    是否清楚入口点
    B.        
    是否清楚信任边界
    C.        
    是否验证Web页输入
    D.        
    是否对传递到组件或Web服务的参数进行验证
    E.        
    是否验证从数据库中检索的数据
    F.        
    是否将方法集中起来
    G.        
    是否依赖客户端的验证
    H.      
    应用程序是否易受SQL注入攻击
    I.        
    应用程序是否易受XSS攻击
    l        
    如何处理输入
    3)        
    身份验证
    l        
    是否区分公共访问和受限访问
    l        
    是否明确服务帐户要求
    l        
    如何验证调用者身份
    l        
    如何验证数据库的身份
    l        
    是否强制试用帐户管理措施
    4)        
    授权
    l        
    如何向最终用户授权
    l        
    如何在数据库中授权应用程序
    l        
    如何将访问限定于系统级资源
    5)        
    配置管理
    l        
    是否支持远程管理
    l        
    是否保证配置存储的安全
    l        
    是否隔离管理员特权
    6)        
    敏感数据
    l        
    是否存储机密信息
    l        
    如何存储敏感数据
    l        
    是否在网络中传递敏感数据
    l        
    是否记录敏感数据
    7)        
    会话管理
    l        
    如何交换会话标识符
    l        
    是否限制会话生存期
    l        
    如何确保会话存储状态的安全
    8)        
    加密
    l        
    为何使用特定的算法
    l        
    如何确保加密密钥的安全性
    9)        
    参数操作
    l        
    是否验证所有的输入参数
    l        
    是否在参数过程中传递敏感数据
    l        
    是否为了安全问题而使用HTTP头数据
    10)        
    异常管理
    l        
    是否使用结构化的异常处理
    l        
    是否向客户端公开了太多的信息
    11)        
    审核和日志记录
    l        
    是否明确了要审核的活动
    l        
    是否考虑如何流动原始调用这身份
    2.        
    应用及传输安全
    WEB
    应用系统的安全性从使用角度可以分为应用级的安全与传输级的安全,安全性测试也可以从这两方面入手。
    应用级的安全测试的主要目的是查找Web系统自身程序设计中存在的安全隐患,主要测试区域如下。
    l        
    注册与登陆:现在的Web应用系统基本采用先注册,后登录的方式。
    A.        
    必须测试有效和无效的用户名和密码
    B.        
    要注意是否存在大小写敏感,
    C.        
    可以尝试多少次的限制
    D.        
    是否可以不登录而直接浏览某个页面等。
    l        
    在线超时:Web应用系统是否有超时的限制,也就是说,用户登陆一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用。
    l        
    操作留痕:为了保证Web应用系统的安全性,日志文件是至关重要的。需要测试相关信息是否写进入了日志文件,是否可追踪。
    l        
    备份与恢复:为了防范系统的意外崩溃造成的数据丢失,备份与恢复手段是一个Web系统的必备功能。备份与恢复根据Web系统对安全性的要求可以采用多种手段,如数据库增量备份、数据库完全备份、系统完全备份等。出于更高的安全性要求,某些实时系统经常会采用双机热备或多级热备。除了对于这些备份与恢复方式进行验证测试以外,还要评估这种备份与恢复方式是否满足Web系统的安全性需求。
    传输级的安全测试是考虑到Web系统的传输的特殊性,重点测试数据经客户端传送到服务器端可能存在的安全漏洞,以及服务器防范非法访问的能力。一般测试项目包括以下几个方面。
    l        HTTPS
    SSL测试:默认的情况下,安全HTTPSoure HTTP)通过安全套接字SSLSource Socket Layer)协议在端口443上使用普通的HTTPHTTPS使用的公共密钥的加密长度决定的HTTPS的安全级别,但从某种意义上来说,安全性的保证是以损失性能为代价的。除了还要测试加密是否正确,检查信息的完整性和确认HTTPS的安全级别外,还要注意在此安全级别下,其性能是否达到要求。
    l        
    服务器端的脚本漏洞检查:存在于服务器端的脚本常常构成安全漏洞,这些漏洞又往往被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。
    l        
    防火墙测试:防火墙是一种主要用于防护非法访问的路由器,在Web系统中是很常用的一种安全系统。防火墙测试是一个很大很专业的课题。这里所涉及的只是对防火墙功能、设置进行测试,以判断本Web系统的安全需求。

    另推荐安全性测试工具:
    Watchfire AppScan
    :商业网页漏洞扫描器(此工具好像被IBM收购了,所以推荐在第一位)
    AppScan
    按照应用程序开发生命周期进行安全测试,早在开发阶段就进行单元测试和安全保证。Appscan能够扫描多种常见漏洞,例如跨网站脚本、HTTP应答切开、参数篡改、隐藏值篡改、后门/调试选项和缓冲区溢出等等。


    Acunetix Web Vulnerability Scanner
    :商业漏洞扫描器(目前用的比较多,不过这东东N占内存)
    Acunetix WVS
    自动检查您的网页程序漏洞,例如SQL注入、跨网站脚本和验证页面弱密码破解。Acunetix WVS有着非常友好的用户界面,还可以生成个性化的网站安全评估报告。

    另附我以前在51testing上发过Yeepay网站安全测试漏洞之跨站脚本注入
    http://bbs.51testing.com/thread-113784-1-1.html
    Sql
    注入和跨站脚本这种漏洞比较常见,另在支付宝网站注册页面也存在跨站脚本情况.

  • 整理的安全测试资料(三)

    2011-03-07 10:29:26

    -----------------------------------------------------------------------------
    安全测试网站
    http://www.51testing.com/?uid-57698-action-spacelist-type-bbs-view-myfav
    ----------------------------------------------------------------------------

    1、输入特殊字符串:null,NULL、&nbsp /javascript/<script>.</script>/<title>
    /<html>/<td>

    2,输入脚本函数:<script>alter("abc")</script>/documrnt.write("abc")、<b>helluo</b>


    安全性测试

     (1)SQL注入

      (2)XSS跨网站脚本攻击:程序或数据库没有对一些特殊字符进行过滤或处理,导致用户

      所输入的一些破坏性的脚本语句能够直接写进数据库中,浏览器会直接执行这些脚本语句,破坏网站的正常显示,或网站用户的信息被盗,构造脚本语句时,要保证脚本的完整性。

      document.write("abc")

      <script>alter("abc")</script>

      (3)URL地址后面随便输入一些符号

      (4)验证码更新问题

      以上就是对Web测试的一个总结,相信一定还存在某些的遗漏,欢迎大家指正、补充。
    -------------------------------------------------------------------------------
    转 自  http://cs.phontol.com/20081017_330516.html

    1. 不登录系统,直接输入登录后的页面的url是否可以访问
    2. 不登录系统,直接输入下载文件的url是否可以下载,如输入http://url/download?name=file是否可以下载文件file
    3. 退出登录后按后退按钮能否访问之前的页面
    4. ID/密码验证方式中能否使用简单密码。如密码标准为6位以上,字母和数字混合,不能包含ID,连续的字母或数字不能超过n位
    5. 重要信息(如密码,身份证号码,信用卡号等)在输入或查询时是否用明文显示;在浏览器地址栏里输入命令javascrīpt:alert(doucument.cookie)时是否有重要信息;在html源码中能否看到重要信息
    6. 手动更改URL中的参数值能否访问没有权限访问的页面。如普通用户对应的url中的参数为l=e,高级用户对应的url中的参数为l=s,以普通用户的身份登录系统后将url中的参数e改为s来访问本没有权限访问的页面
    7. url里不可修改的参数是否可以被修改
    8. 上传与服务器端语言(jsp、asp、php)一样扩展名的文件或exe等可执行文件后,确认在服务器端是否可直接运行
    9. 注册用户时是否可以以'--,' or 1=1 --等做为用户名
    10. 传送给服务器的参数(如查询关键字、url中的参数等)中包含特殊字符(','and 1=1 --,' and 1=0 --,'or 1=0 --)时是否可以正常处理
    11. 执行新增操作时,在所有的输入框中输入脚本标签(&lt;scrīpt&gt;alert(&quot;&quot;)&lt;/scrīpt&gt;)后能否保存
    12. 在url中输入下面的地址是否可以下载:http://url/download.jsp?file=C:\windows\system32\drivers\etc\hosts,http://url/download.jsp?file=/etc/passwd
    13. 是否对session的有效期进行处理
    14. 错误信息中是否含有sql语句、sql错误信息以及web服务器的绝对路径等
    15. ID/密码验证方式中,同一个账号在不同的机器上不能同时登录
    16. ID/密码验证方式中,连续数次输入错误密码后该账户是否被锁定
    17. 新增或修改重要信息(密码、身份证号码、信用卡号等)时是否有自动完成功能(在form标签中使用autocomplete=off来关闭自动完成功能)


    ---------------------------------------------------------
    通行账户:注册不区分大小写
    登录会区分大小写

  • 整理的安全测试资料(二)

    2011-03-07 10:27:37

    1,
    问题:没有被验证的输入
    测试方法:

    数据类型(字符串,整型,实数,等)
    允许的字符集

    最小和最大的长度
    是否允许空输入
    参数是否是必须的
    重复是否允许
    数值范围
    特定的值(枚举型)
    特定的模式(正则表达式)

    2,
    问题:有问题的访问控制

    测试方法:

    主要用于需要验证用户身份以及权限的页面,复制该页面的url地址,关闭该页面以后,查看是否可以直接进入该复制好的地址
    例:从一个页面链到另一个页面的间隙可以看到URL地址
    直接输入该地址,可以看到自己没有权限的页面信息,

    3      错误的认证和会话管理

    例:对Grid、Label、Tree view类的输入框未作验证,输入的内容会按照html语法解析出来


    4,缓冲区溢出

    没有加密关键数据

    例:view-source:http地址可以查看源代码

    在页面输入密码,页面显示的是 *****,  右键,查看源文件就可以看见刚才输入的密码,

    5,拒绝服务

    分析:攻击者可以从一个主机产生足够多的流量来耗尽狠多应用程序,最终使程序陷入瘫痪。需要做负载均衡来对付。


    6,不安全的配置管理

    分析:Config中的链接字符串以及用户信息,邮件,数据存储信息都需要加以保护

    程序员应该作的: 配置所有的安全机制,关掉所有不使用的服务,设置角色权限帐号,使用日志和警报。

    分析:用户使用缓冲区溢出来破坏web应用程序的栈,通过发送特别编写的代码到web程序中,攻击者可以让web应用程序来执行任意代码。

    7,注入式漏洞。
    例:一个验证用户登陆的页面, 

    如果使用的sql语句为: 

    Select *  from  table A where  username=’’ + username+’’ and pass word …..

    Sql 输入  ‘ or 1=1 ――  就可以不输入任何password进行攻击
     

    8,不恰当的异常处理 

    分析:程序在抛出异常的时候给出了比较详细的内部错误信息,暴露了不应该显示的执行细节,网站存在潜在漏洞,

     

    9,不安全的存储

    分析:帐号列表:系统不应该允许用户浏览到网站所有的帐号,如果必须要一个用户列表,推荐使用某种形式的假名(屏幕名)来指向实际的帐号。 

    浏览器缓存:认证和会话数据不应该作为GET的一部分来发送,应该使用POST,

    10        问题:跨站脚本(XSS)

    分析:攻击者使用跨站脚本来发送恶意代码给没有发觉的用户,窃取他机器上的任意资料

    测试方法:

    ?         HTML标签:<…>…</…>

    ?         转义字符:&(&);<(<);>(>); (空格) ;

    ?         脚本语言:

          <script. language=‘javascript’>

           …Alert(‘’)

           </script>

    ?         特殊字符:‘  ’ <  >  /

    ?         最小和最大的长度

    ?         是否允许空输入

  • 整理的安全测试资料(一)

    2011-03-07 10:26:19

    1)是否可以不登陆而直接浏览某个页面等。
          2)Web应用系统是否有超时的限制,也就是说,用户登陆后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用。
          3)为了保证Web应用系统的安全性,日志文件是至关重要的。需要测试相关信息是否写进了日志文件、是否可追踪,以防止被黑客截取。51Testing软件测试网)
          4)当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。
          5)服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。
          6)有的在线登录系统会有“找回密码”,这样我们在测试是就一定要注意找回密码的条件(找回密码条件安全级应等同于或高于密码安全级)和此时的网络安全性。


    ----------------------------------------
    1. 不登录系统,直接输入登录后的页面的url是否可以访问
      2. 不登录系统,直接输入下载文件的url是否可以下载,如输入http://url/download?name=file是否可以下载文件file

      3. 退出登录后按后退按钮能否访问之前的页面

      4. ID/密码验证方式中能否使用简单密码。如密码标准为6位以上,字母和数字混合,不能包含ID,连续的字母或数字不能超过n位

      5. 重要信息(如密码,身份证号码,信用卡号等)在输入或查询时是否用明文显示;在浏览器地址栏里输入命令javascrīpt:alert(doucument.cookie)时是否有重要信息;在html源码中能否看到重要信息

      6. 手动更改URL中的参数值能否访问没有权限访问的页面。如普通用户对应的url中的参数为l=e,高级用户对应的url中的参数为l=s,以普通用户的身份登录系统后将url中的参数e改为s来访问本没有权限访问的页面

      7. url里不可修改的参数是否可以被修改

      8. 上传与服务器端语言(jsp、asp、php)一样扩展名的文件或exe等可执行文件后,确认在服务器端是否可直接运行

      9. 注册用户时是否可以以'--,' or 1=1 --等做为用户名

      10. 传送给服务器的参数(如查询关键字、url中的参数等)中包含特殊字符(','and 1=1 --,' and 1=0 --,'or 1=0 --)时是否可以正常处理

      11. 执行新增操作时,在所有的输入框中输入脚本标签(<scrīpt>alert("")</scrīpt>)后能否保存

      12. 在url中输入下面的地址是否可以下载:http://url/download.jsp?file=C:\windows\system32\drivers\etc\hosts,http://url/download.jsp?file=/etc/passwd

      13. 是否对session的有效期进行处理

      14. 错误信息中是否含有sql语句、sql错误信息以及web服务器的绝对路径等

      15. ID/密码验证方式中,同一个账号在不同的机器上不能同时登录

      16. ID/密码验证方式中,连续数次输入错误密码后该账户是否被锁定

      17. 新增或修改重要信息(密码、身份证号码、信用卡号等)时是否有自动完成功能(在form标签中使用autocomplete=off来关闭自动完成功能

  • 验证码漏洞攻击问题转

    2010-12-10 17:17:57

  • 一个安全测试的checklist(转)

    2010-12-10 15:08:19

  • X-Scan软件

    2009-12-18 10:34:51

    x-scan软件介绍

    一.系统要求:Windows 9x/NT4/2000
    二.功能简介:
    采用多线程方式对指定IP地址段(或单机)进行安全漏洞检测,支持插件功能,提供了图形界面和命令行两种操作方式,扫描内容包括:远程操作系统类型及版本,标准端口状态及端口BANNER信息,CGI漏洞,IIS漏洞,RPC漏洞,SQL-SERVER、FTP-SERVER、SMTP-SERVER、POP3-SERVER、NT-SERVER弱口令用户,NT服务器NETBIOS信息等。扫描结果保存在/log/目录中,index_*.htm为扫描结果索引文件。对于一些已知漏洞,我们给出了相应的漏洞描述、利用程序及解决方案,其它漏洞资料正在进一步整理完善中,您也可以通过本站的"安全文献"和"漏洞引擎"栏目查阅相关说明。

    三.所需文件:
    xscan_gui.exe -- X-Scan for Windows 9x/NT4/2000 图形界面主程序
    xscan.exe -- X-Scan for Windows 9x/NT4/2000 命令行主程序
    使用说明.txt -- X-Scan使用说明
    oncrpc.dll -- OncRpc动态链接库
    /dat/language.ini -- 多语言数据文件,可通过设置"LANGUAGE\SELECTED"项进行语言切换
    /dat/config.ini -- 用户配置文件,用于保存CGI漏洞检测的相关设置及所有字典文件名称(含相对路径)
    /dat/cgi.lst -- CGI漏洞列表
    /dat/rpc.ini -- 用于保存RPC程序名称及漏洞列表
    /dat/port.ini -- 用于保存待检测端口列表及所有已知端口的对应服务名称
    /dat/*_user.dic -- 用户名字典文件,用于检测弱口令用户
    /dat/*_pass.dic -- 密码字典,用于检测弱口令用户
    /dat/os.finger -- 识别远程主机操作系统所需的操作系统特征码配置文件
    /dat/wry.dll -- "IP-地理位置"地址查询数据库文件
    /plugin -- 用于存放所有插件(后缀名为.xpn),插件也可放在xscan.exe所在目录的其他子目录中,程序会自动搜索。

    注:xscan_gui.exe与xscan.exe共用所有插件及数据文件,但二者之间没有任何依赖关系,均可独立运行。

    四.准备工作:
    X-Scan不需要安装,解压缩即可运行,不需要额外驱动程序支持,但在Windows 98/NT 4.0系统下无法通过TCP/IP堆栈指纹识别远程操作系统类型,在Windows 98系统下对Netbios信息的检测功能受限。

    五.运行参数说明:
    1.命令格式: xscan -host <起始IP>[-<终止IP>] <检测项目> [其他选项]
    xscan -file <主机列表文件名> <检测项目> [其他选项]

    其中<检测项目> 含义如下:
    -port : 检测常用服务的端口状态(可通过\dat\port.ini文件的"PORT-SCAN-OPTIONS\PORT-LIST"项定制待检测端口列表);
    -netbios : 检测Netbios信息;
    -rpc : 检测RPC漏洞;
    -sql : 检测SQL-Server弱口令(可通过\dat\config.ini文件设置用户名/密码字典文件);
    -ftp : 检测FTP弱口令(可通过\dat\config.ini文件设置用户名/密码字典文件);
    -bind : 检测BIND漏洞;
    -finger : 检测Finger漏洞;
    -sygate : 检测sygate漏洞;
    -ntpass : 检测NT-Server弱口令(可通过\dat\config.ini文件设置用户名/密码字典文件);
    -cgi : 检测CGI漏洞(可通过\dat\config.ini文件的"CGI-ENCODE\encode_type"项设置编码方案);
    -iis : 检测IIS漏洞(可通过\dat\config.ini文件的"CGI-ENCODE\encode_type"项设置编码方案);
    -smtp : 检测SMTP-Server漏洞(可通过\dat\config.ini文件设置用户名/密码字典文件);
    -pop3 : 检测POP3-Server弱口令(可通过\dat\config.ini文件设置用户名/密码字典文件);
    -all : 检测以上所有项目;

    [其他选项] 含义如下:
    -v: 显示详细扫描进度
    -d: 扫描前不Ping被检测主机
    -t <并发线程数量[,并发主机数量]>: 指定最大并发线程数量和并发主机数量, 默认数量为50,10

    * cgi及iis参数中"编码方案"含义:
    1.用"HEAD"替换"GET"
    2.用"POST"替换"GET"
    3.用"GET / HTTP/1.0\r\nHeader:" 替换 "GET"
    4.用"GET /[filename]?param=" 替换 "GET"(可通过\dat\config.ini文件的"CGI-ENCODE\encode4_index_file"项设置[filename])
    5.用"GET %00 " 替换 "GET"
    6.多个"/"或"\"
    7."/"与"\"互换
    8.用"<Tab>替换"<空格>"
    注:各变形方案若不冲突则可以同时使用,如"-cgi 1,6,8"表示同时使用第1、6、8号方案对HTTP请求进行变形。

    2.示例:
    xscan -host xxx.xxx.1.1-xxx.xxx.255.255 -all
    含义:检测xxx.xxx.1.1-xxx.xxx.255.255网段内主机的所有漏洞;

    xscan -host xxx.xxx.1.1-xxx.xxx.255.255 -port -ntpass -t 100
    含义:检测xxx.xxx.1.1-xxx.xxx.255.255网段内主机的标准端口状态,NT弱口令用户,最大并发线程数量为100;

    xscan -file host.lst -port -cgi -t 100,5 -v -d
    含义:检测"host.lst"文件中列出的所有主机的标准端口状态,CGI漏洞,最大并发线程数量为100,同一时刻最多检测5台主机,显示详细检测进度,检测前不通过Ping命令探测远程主机状态;


    六.插件接口:
    #define PLUGIN_PARAMS_0 0
    #define PLUGIN_PARAMS_1 1
    #define PLUGIN_PARAMS_101 101
    #define PLUGIN_PARAMS_102 102
    #define PLUGIN_PARAMS_103 103
    #define PLUGIN_PARAMS_201 201

    typedef VOID (CALLBACK *PALERT_USER) (
    char *szHostName,
    char *szVulnName,
    char *szLine);

    typedef VOID (CALLBACK *PLOG_TO_FILE) (
    char *szLogFileName,
    char *szLine);

    /*插件基本信息*/
    typedef struct _PLUGIN_INFO {
    char szClassName[50]; //插件所属类别
    char szMemberName[50]; //插件成员名称
    char szVersion[10]; //插件版本
    char szFileName[50]; //插件原始文件名(不含路径)
    char szParamsRequest[50]; //选择该插件所需参数,如"-cgi"
    char szPrompt[200]; //对参数的解释,如"-cgi: check HTTP vulnerability"
    int nSingle; //是否为单一漏洞(漏洞数量只可能为1或0,如Netbios信息)
    char szAuthorName[50]; //插件作者
    char szRisk[10]; //漏洞风险等级
    char szDescription[300]; //插件对漏洞的文字描述
    char szAdvice[300]; //插件对漏洞提供的一些建议
    int nTimeOut; //超时限制,"0"表示不限时
    int nParamsType; //插件导出函数"PluginFunc()"的入口参数类型(PLUGIN_PARAMS_1)
    int nMark; //标识该插件是否被某一模板选中
    } PLUGIN_INFO;

    /*插件运行参数*/
    typedef struct _SCAN_PARAMS_1 {
    char szHostName[MAXLEN]; //主机地址
    char szParams[MAXLEN]; //用户输入参数
    int nMaxThread; //最大线程数量
    int *pnThreadCount; //当前线程总数量
    char *szCurrentSchedule; //当前任务
    int nVerbose; //是否显示详细扫描信息
    char szLogFileName[MAXLEN]; //LOG文件名(含路径)
    PALERT_USER pAlertUser; //回调函数"AlertUser()"地址
    PLOG_TO_FILE pLogToFile; //回调函数"LogToFile()"地址
    char szResultBuf[MAXLEN]; //动态返回信息
    int nVulnCount; //漏洞数量
    }SCAN_PARAMS_1;

    /* 该函数在初始化插件时被调用,用于获取插件基本信息。
    返回值含义:TRUE--插件初始化成功;FALSE--插件初始化失败。*/
    extern "C" __declspec(dllexport) BOOL WINAPI GetPluginInfo(PLUGIN_INFO*);

    /* 该函数在检测主机时被调用,传入主机基本信息及必要参数,返回扫描结果。
    返回值含义:TRUE--存在漏洞;FALSE--不存在漏洞。*/
    extern "C" __declspec(dllexport) BOOL WINAPI PluginFunc(SCAN_PARAMS_1*);

    插件应导出上述两个函数,xscan.exe将分别在初始化和扫描时调用。编译后将最终生成的.dll程序重命名为.xpn文件,并保存在xscan.exe所在目录的任何子目录内(建议将所有插件移至plugin目录,便于管理)。示例插件程序见"/plugin/sample.cpp"。


    七.注意事项:
    1.当网速过慢时,多线程检测CGI漏洞有可能会导致本地网络阻塞,出现无法连接远程主机或读取数据失败等情况,此时需相应调低线程数量,或暂时不扫描CGI漏洞。

    2.在检测过程中,按"[空格]"键可以查看各线程状态及扫描进度,按"q"键保存当前数据后提前退出程序,按"<ctrl+c>"强行关闭程序。

    3."X-Scan"所使用的地址查询数据库为"追捕"软件的数据库,并且得到作者许可。在此对"追捕"软件作者及所有为建立此数据库作出贡献的朋友表示感谢。由于没有考虑和将来"追捕"数据库的兼容问题,不能保证能正确使用以后版本的"追捕"数据库。在"追捕"数据库文件格式没有改变的情况下,可以将新版本的数据库文件"wry.dll"拷贝到/dat目录下替换旧版本文件,但建议在覆盖前备份旧文件.
  • 安全测试常见方法

    2009-12-18 10:33:48

    安全测试的常见方法
        1、欺骗身份:在身份验证时窃取合法用户密码,然后模拟合法用户访问;
        2、篡改数据:故意毁坏或操作数据
        3、否认服务:否认系统已经提供某项服务,重复向系统提起请求,消耗系统资源;
        4、信息泄露:是否对一些敏感信息进行了加密?会不会被无权限的人获取?
        5、拒绝服务:通过通信协议的一些漏洞,使系统通信溢出,无法处理合法请求;
        6、特权升级:用户是否能获得不在其权限范围内的访问
Open Toolbar