安全渗透测试技术白皮书_渗透测试技术白皮书
安全渗透测试技术白皮书由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“渗透测试技术白皮书”。
安全渗透测试技术白皮书
2008年月 17 日
目录
4.1.1.预攻击阶段的发现.....................................................16 4.1.2.攻击阶段的操作.......................................................16 4.1.3.后攻击阶段可能造成的影响.............................................22 5.附录:..................................................................23
google、baidu 等搜索引擎获取目标信息
采用 FWtester、hping3 等工具进行防火墙规则探测
常规漏洞扫描和采用商用软件进行检测 结合使用测评工具与 Neus 等商用或免费的扫描工具进行漏洞扫描
采用 SolarWind 对网络设备等进行发现
采用 nikto、webinspect等软件对 web 常见漏洞进行扫描
采用如AppDetectiv之类的商用软件对数据库进行扫描分析
„„
对 Web 和数据库应用进行分析 采用 WebProxy、SPIKEProxy、webscarab、ParosProxy、Absinthe 等工具进行分析
用 Ethereal 抓包协助分析
用 webscan、fuzzer 进行 SQL 注入和 XSS 漏洞初步分析
手工检测 SQL 注入和 XSS 漏洞
采用类似OScanner 的工具对数据库进行分析
„„
应用分析的注意事项
检查应用系统架构、防止用户绕过系统直接修改数据库
检查身份认证模块,防止非法用户绕过身份认证
检查数据库接口模块,防止用户获取系统权限
检查文件接口模块,防止用户获取系统文件
检查其他安全威胁
其中每个环节都还有详细的checklist,读者可以自行补充。
2.2 攻击阶段
基于通用设备、数据库、操作系统和应用的攻击
可以采用各种公开及私有的缓冲区溢出程序代码,一个比较好的Exploit搜索站点是: http:// code **/ $strTemp=trim($inString);if(strlen($strTemp)>0){ $strTemp=str_replace(“'”,“'”,$strTemp);$strTemp=str_replace('',“\”,$strTemp);$strTemp=str_replace('“',”"“,$strTemp);if($level==1){ $strTemp=str_replace('',”>“,$strTemp);$strTemp=htmlspecialchars($strTemp);} } return $strTemp;} function generateRandomCode($long=4){ global $HTTP_SESSION_VARS;for($i=0;$i10){ @unlink($systemAdminPath.”verifyImage/“.$file);} } $im=imagecreate(45, 16);$background_color = imagecolorallocate($im, 255, 255, 255);$text_color = imagecolorallocate($im, 233, 14, 91);imagestring($im, 5, 5, 0, generateRandomCode(), $text_color);$imgFile=time().rand(0,100).”.jpg“;@imagejpeg($im,$systemAdminPath.”verifyImage/“.$imgFile);imagedestroy($im);return $systemAdminPath.”verifyImage/“.$imgFile;} } function countVisitor(){ global $systemUrl;$hand=@fopen($systemUrl.”count.txt“,”r“);$count=@fread($hand,@filesize($systemUrl.”count.txt“));@fclose($hand);return($count+0);} function checkLogin(){ global $HTTP_SESSION_VARS,$dbTools;list($count)=$dbTools->fetchArray($dbTools->getResult(”SELECT COUNT(*)FROM adminuser WHERE id='$HTTP_SESSION_VARS[loginUserId]' AND name='$HTTP_SESSION_VARS[loginUser]' “));return($count>0?true:false);} function loadHtml($file){ global
$systemAdminPath,$SystemAdmin,$system;include($systemAdminPath.$file);} function DisplayMeage($meage, $withhr=true){ echo ”“.$meage.”n“;if($withhr){ echo ”n“;} } function CalcPaword($paword){ return md5($GLOBALS[”MD5RandomString“].$paword);} function displayImage($imageFile,$width,$height){ global $systemUploadUrl;$swf=”
察看c:inetpub、纯文本、XML、LaTeX等格式保存。
5.2.2.3 Nmap和xprobe2 功能强大的端口扫描软件,支持多种协议的扫描如UDP,TCP connect(),TCP SYN(half open), ftp proxy(bounce attack),Reverse-ident, ICMP(ping sweep), FIN, ACK sweep,Xmas Tree, SYN sweep, 和Null扫描。还提供一些实用功能如通过tcp/ip来甄别操作系统类型、秘密扫描、动态延迟和重发、平行扫描、通过并行的PING侦测下属的主机、欺骗扫描、端口过滤探测、直接的RPC扫描、分布扫描、灵活的目标选择以及端口的描述。
Xprobe2是一款利用ICMP协议识别操作系统的软件。5.2.2.4 STIF STIF是fyodor设计开发的一款自动进行渗透测试的工具框架。5.2.2.5 其它web及数据库检测工具
包括部份公开及私有的Web和数据库检测工具。
5.2.3 漏洞利用工具
中科正阳漏洞挖掘实验室收集、交换及自行研究开发的各种操作系统及应用攻击代码。
5.3 对.NET与Websphere的基本检测项目示例
.NET与websphere除了可能出现应用程序编写方面的错误外,服务器本身在历史上也出现过多种安全漏洞,在我们的基本检测项目中,对websphere的检测项目包括:
对.NET的检测项目包括:
5.4 对web及其它B/S或C/S应用进行分析
5.4.1 检查应用系统架构、防止用户绕过系统直接修改数据库
检查用户是否可以直接登录数据库?
测试登录验证页面,检查身份认证方式? 测试登录后页面,检查是否所有页面都需要身份验证? 检查系统是否可以被暴利破解,是否有多次登录失败锁定机制? 检查应用程序是否有多级权限,不同权限的判别是在服务器端还是客户端?权限标志是在seion还是cookie中,检查是否可以绕过权限设置?
检查系统是否可以被Seion重放攻击? 检查系统是否可以通过“取回密码功能”攻击?
5.4.3 检查数据库接口模块,防止用户获取系统权限
检查是否可以被SQL语句注入,登陆系统? 检查是否可以被sql语句注入,调用系统程序? 查看系统中是否用到存储过程?
查看系统是否需要文件接口? 检查文件接口页面是否限制调用上级目录? 检查是否已知目录? 检查是否有例子文件? 检查系统是否允许目录浏览? 检查是否调用系统程序?
5.4.5 检查其他安全威胁
检查是否用户输入的信息没有经过检查和处理就以HTML方式显示 检查系统是否存在远程管理功能?
检查WEB系统和数据库或者中间件是否有加密? 检查系统是否返回多余的错误信息 检测系统是否有元字符注入? 检查系统是否可以被User-Agent欺骗 检查系统是否存在调试命令和参数 检查是否存在逻辑错误?