信息收集第一类、DNS扫描工具
收集信息包括:域名注册信息
域名解析服务器(DNS Server)、有效的子域名称
1、Whois
使用方法:#whois 顶级域名
2、Dnsenum
所在路径:/pentest/enumeration/dns/dnsenum
使用方法:./dnsenum.pl 顶级域名
./dnsenum.pl -enum 顶级域名
./dnsenum.pl -f dns.txt(字典) –dnsserver 8.8.8.8 顶级域名 -o output.txt
3、Dnsmap
所在路径:/pentest/enumeration/dns/dnsmap
使用方法:./dnsmap 顶级域名 -w wordlist_TLAs.txt -r result.txt
4、Dnswalk
所在路径:/pentest/enumeration/dns/dnswalk
使用方法:./dnswak.pl 顶级域名.
—–对于没有开启“区域传送”功能的DNS,功能有限
信息收集第二类、主机综合扫描工具
1、Tcptraceroute
作用:用于查询由源到目的IP的经过路由
原理:通过发送TCP/SYN数据包来代替UDP或ICMP应答数据包,可以穿透大多数防火墙
使用方法1: #tcptraceroute 域名
使用方法2:#tcptraceroute -q(表示:查询次数,用于加快速度) 1 -n(表示:不做反向域名解析,加快速度) 域名
2、Netenum
作用:用于局域网内查询存活主机
所在路径:/pentest/enumeration/irpas
使用方法:/netenum 192.168.0.0/24 3 1
3、Nmap
使用方法1、#nmap -sP IP或网段 查看存活主机
使用方法2、#namp -w -sS IP或网段 查看目标开放端口
使用方法3、#nmap -O IP或网段 识别目标的操作系统及其版本
使用方法4、#nmap -sV IP或网段 扫描目标开放端口上运行的服务类型和版本信息
使用方法5、#nmap -sT -p指定端口 网段 –open 查找网段中开启指定端口的主机
端口指定: -p22
-p1-1024
-p U:53,111,137,T:21-25,80,129,8080
使用方法6、#nmap -sS 目标地址 -D 诱骗IP地址 扫描目标并设置诱骗地址
在扫描时使用诱骗技术避免引起管理员的注意,扫描目标设备/计算机(192.168.0.10)的开放端口并设置一个诱骗地址(192.168.0.2),在目标的安全日志中将会显示诱骗地址而不是你的IP地址。诱骗地址必须是存活的,检查目标主机的安全日志( /var/log/)确定它是否工作。
4、Hping2
使用方法1:#hping2 IP
使用方法2:#hping2 -A/F/S -p 端口 IP或域名
备注:-A”为设置ACK标志位,“-F”为设置FIN标志位,“-S”为设置SYN标志位,“-p”
指定要探测的端口
5、Genlist
功能:快速扫描活跃主机
使用方法:#genlist -s 192.168.0.\*
6、Nbtscan
使用方法:#nbtscan 192.168.0.1-254
7、Xprobe2
功能:主动探测目标操作系统及版本
使用方法:#xprobe2 IP
8、Amap
功能:扫描并识别目标开放端口上正在运行的服务及版本
使用方法:amap -v -d IP 端口
9、Httprint
所在路径:/pentest/enumeration/www/httprint/linux
功能:通过读取http banner数据判断web服务程序及版本
使用方法:#./httpint -h IP -s signature.txt
10、Httsquash
所在路径:/pentest/scanners/httsquash
功能:通过读取http banner 数据判断WEB服务程序及版本
使用方法:./httsquash -r IP
漏洞扫描工具使用
Nessus是其中一个最流行的和有强力的漏洞扫描器,尤其是对UNIX系统。它最初是自由和开放源码,但他们在2005年关闭了源代码,在2008年取消了免费的“注册Feed”版本。现在每年花费1200美元。
在Nessus的基础上发展了一个免费开源的分支,OpenVAS
http://download.openSUSE.org/repositories/security:/OpenVAS:/STABLE:/v4/CentOS_6/x86_64/
首先、Openvas的介绍
OpenVAS (Open Vulnerability Assessment System)是开放式漏洞评估系统,其核心部件是一个服务器,包括一套望楼漏洞测试程序,可以检测远程系统和应用程序中的安全问题。
官方网站:http://www.openvas.org/
注意:OpenVAS Server仅支持Linux系统。OpenVAS Client 没有特殊的要求
图1、Openvas的架构图
其中Openvas server 是核心部分,负责为Openvas Client提供登陆,查询等功能,包括一整套随时更新的扫描插件(Plugins),用户可以通过OpenVAS NVT Feed Service保持与官方扫描插件的自动更新。同时OpenVAS Server 负责根据OpenVAS Client发起的请求,对指定的Target Systems(一系列主机)进行扫描,这些主机可以包括Linux,Windows,或是其他的操作系统。
http://download.opensuse.org/repositories/security:/OpenVAS:/STABLE:/v4/CentOS_6/x86_64/
OpenVAS相关服务:
openvas-manager #//负责与客户端Greebone程序通信,完成扫描任务、检测报告的提交等工作,默认端口为9390
openvas-scanner #//实际执行扫描的主服务,默认端口为9391
gsad #//负责提供Web访问界面,默认监听地址为127.0.0.1,端口为9392
openvas-administrator #//负责与openvas-manager、gsad通信,完成用户和配置管理等操作,默认监听地址为127.0.0.1,端口为9393
其次、BackTrack平台上配置OpenVAS
注意:BackTrack平台集成了OpenVAS扫描工具
#apt-get install openvas-server
第一、OpenVAS 检测
# /pentest/misc/openvas/openvas-check-setup
注意:openvas-check-setup命令工具用于诊断问题并给出建议。需要绝对路径
图1、
注意:由上图可知,缺少CA证书文件
第二、开始配置 OpenVAS
Step 1. 添加用户
#openvas-adduser
图1、
注意:由上图可知 “账号:root 密码:password 角色:空 ”
Step 2. 生成证书
#openvas-mkcert
根据提示输入相关信息用以生成证书
图2、证书生成状态
Step 3.同步 NVT’s (需要联网获取最新的nvt’s)
#openvas-nvt-sync
注意:强烈建议能够经常性的更新nvt’s,决定了是否能够扫描成功(第一次时间稍长)。需要能够连接互联网
图1、
Step 4. 加载插件并启动运行scanner
#openvassd
图1、
注意:scanner 作为一个服务会在后台运行直到重启系统或结束服务
Step 5. 启动 OpenVAS manager
#openvas-mkcert-client -n om -i (生成客户端CA证书)
作用:为Openvas manager生成client 证书
选项含义:
-n 表示不提问,使用默认的信息(国家、地区等)
注意:此处的“om”是client的用户名称
图1、
#openvasmd –rebuild 用于重建数据库:每次升级nvt’s数据dou需要执行
Step 6. 设置 OpenVAS Administrator
#openvasad -c ‘add_user’ -n openvasadmin -r Admin
注意:此处我们创建的管理员账户:openvasadmin 。可以自己命名
Step 7.启动OpenVAS Manager
#openvasmd -p 9390 -a 127.0.0.1
注意:作为一个服务运行在后台,直到重启系统或结束服务。由于我们使用本机提供服务,所以IP地址设置为127.0.0.1
Step 8.启动 OpenVAS Administrator
#openvasad -a 127.0.0.1 -p 9393
注意:作为一个服务运行在后台,直到重启系统或结束服务
Step 9.Starting Greenbone Security Assistant(网页访问)
#gsad –http-only –listen=127.0.0.1 -p 9392
注意:作为一个服务运行在后台,直到重启系统或结束服务
————–至此,OpenVAS安装配置完成————————–
第三、OpenVAS 使用方式
方法一、Greenbone security desktop
图1、“应用程序”|“BackTrack”|“Vulnerability Assessment”|“Vulnerability Scanners”|“OpenVAS”|“Start Greenbone Security Desktup”
图2、如下图所示填写服务器IP和账号信息 | “Log in”
图3、正常登陆后进入 Openvas软件界面
方法二、Web interface
图1、打开浏览器 | 访问 “127.0.0.1:9392”
图2、填写账号信息 | “Login”
图3、实现了通过网页正常访问
第四、OpenVAS初始化
注意:在系统启动完成后,需要进行OpenVAS初始化,否则不能进行登陆使用
1) #openvassd (启动scaner并加载plugins默认端口9391)
2) #openvasmd -p 9390 -a 127.0.0.1 (启动manager)
3) #openvasad -a 127.0.0.1 -p 9393 (启动administrator)
4) #gsad –http-only –listen=127.0.0.1 -p 9392 (启动web访问界面)
图1、查看OpenVAS相关服务的状态
注意:需要定期执行如下命令,用以升级plugins(需要联网)
① #openvas-nvt-sync
② #openvasmd –rebuild
第五、创建普通扫描用户,
要求:允许检测192.168.4.0/24、10.0.0.0/24网段
[root@localhost ~]# openvas-adduser
Using /var/tmp as a temporary file holder.
Add a new openvassd user
————————-
Login: tsengyia #//输入要添加的扫描用户名称
Authentication (pass/cert)[pass]: #//直接回车使用默认的密码认证方式
Login password: #//设置密码
Login password(again): #//设置密码(确认)
User rules
————
openvassd has a rules system which allows you to restrict the hosts that tsengyia has the right to test.
For instance, you may want him to be able to scan his own host only.
Please see the openvas-adduser(8) man page for the rules syntax.
Enter the rules for this user, and hit ctrl-D once you are done.
(the user can have an empty rules set)
accept 192.168.4.0/24 #//设置授权规则(允许扫描哪些网段或主机)
accept 10.0.0.0/24
default deny #//设置默认授权规则(若不指定任何规则,默认允许扫描任意主机、网络)
Login tsengyia
Password ************
Rules
accept 192.168.4.0/24
accept 10.0.0.0/24
default deny
Is that ok? (y/n)[y] #//直接回车接受前述设置,完成用户添加
user added.
注意:我们实现了Openvas服务端的安装配置,可以在服务器上之前发起对目标主机的扫描。也可以同过客户端(或网页)连接到远程Openvas服务器上发起对目标主机的扫描。
特别要注意:由于我们是在cloudstack平台上的BackTrack虚拟机实例,需要在cloudstack安全组的入口规则中添加TCP 9392端口。
数据库密码破解工具的使用—DBPwAudit
功能:通过挂在字典对目标数据库进行密码暴力猜解,目前支持的数据库包括SQLServer、MySQL、Oracle、DB2
程序位置:/pentest/database/dbpwaudit/
驱动位置:/pentest/database/dbpwaudit/jdbc/
注意:驱动是需要手动导入的。需要创建自己的破解字典
使用方法1、破解SQLServer数据库
#./dbpwaudit.sh -s IP -d master -D mssql -U username(字典) -P password(字典)
使用方法2、破解MySql数据库
#./dbpwaudit.sh -s IP -d mysql -D mysql -U username(字典) -P password(字典)
Web安全检测工具
1、Nikto2
用途:扫描指定主机的wen类型、主机名、特定目录、Cookie、特定DGI漏洞、XSS漏洞、sql注入漏洞、返回主机运行的http方法等安全问题。
位置:/pentest/web/nikto
用法1:#./nikto.pl -h 主机名或域名 -o 扫描结果
用法2:#./nikto.pl -h 主机IP或域名 -p 80,8080
用法3:#./nikto.pl -h 主机IP或域名 -T 扫描类型代码
用法4:#./nikto.pl -h 主机IP或域名 -c -T (扫描所有类型漏洞)
备注:扫描类型代码
0-检测文件的上传页面
1-检测web日志中可疑的文件或者攻击
2-检测错误配置或默认文件
3-检测信息泄漏问题
4-检测注射(XSS/Script/HTML)问题
5-远程文件索引(从内部根目录中检索是否存在不经授权可访问的文件)
6-检查拒绝服务问题
7-远程文件索引(从任意位置检索是否存在不经授权可访问的文件)
8-检测是否存在系统命令执行漏洞
9-检测SQL注入
a-检查认证绕过问题
b-识别安装的软件版本等
c-检测源代码泄漏问题
x-反向连接选项
2、W3AF
特点:支持命令行和图形界面
位置:/pentest/web/w3af
启动图形化:#./w3af_gui
3、Wfuzz
用途:用来进行web应用暴力猜解的工具,支持对网站目录、登录信息、应用资源文件等的暴力猜解,还可以尽心get及post参数的猜解,sql注入、xss漏洞的测试。
该工具的功能都依赖于字典。
位置:/pentest/web/wfuzz
用法1:用于猜解某个网站下的目录名
#./wfuzz.py -c -z file,字典 –hc 404 -o html http://www.xxx.com/FUZZ 2> ok.html
用法2:
#./wfuzz.py -c -z range -r 1-100 –hc 404 -o html http://www.xxx.com/xxx.asp?id=FUZZ 2> ok.html
用法3:猜解登录的密码
#./wfuzz.py -c -z file -f 字典 -d “login=admin&pwd=FUZZ” –hc 404 http://www.xxx.com/login.php
无线网络安全测试工具
1、虚拟机测试注意问题
① 使用USB无线网卡,在物理机上安装驱动确保正确识别
② 启用(物理机)“VMware USB Arbitration Service”服务
③ 启用虚拟机USB硬件连接支持选项(虚拟机关闭状态)
2、破解WPA/WPA2无线网络密码
2.1 Ifconfig wlan0 up
备注:激活USB无线网卡
2.2 Airmon-ng start wlan0
备注:更改网卡模式为监听模式
2.3Airodump-ng mon0
备注:探测无线AP情况
2.4Airodump-ng -c 6(目标所在的频道,关注CH列) -w result(生成结果文件) mon0
备注:探测并抓包
2.5Aireplay-ng -0 10 -a AP的MAC -c 客户端MAC mon0
—–新开启一个终端,之前抓包的终端不要关闭
备注:对AP实施Deauth攻击,尝试捕获更完成的数据包
2.6抓获到数据包
2.7Aircrack-ng -w 字典 捕获的数据包文件(*.cap)
备注:挂在字典破解明文密码
抓包嗅探工具
——此处的两个软件主要用于明文传输的协议:ftp telnet http smtp vnc等
1、Wireshark
#wireshark 启动程序
“Caputure”—-“Interfaces”
选择抓包的目标端口
2、dsniff
欺骗攻击工具Ettercap
1、Ettercap介绍
它是一款功能强大的欺骗攻击软件,既可以实现基本的ARP欺骗,也可以实现复杂的中间人攻击。
至此图形化和命令行两种模式
2、使用Ettercap实现局域网ARP欺骗+中间人攻击
1) #ettercap -G #启动图形化
2) 打开/etc/etter.conf 文件去掉相应注释信息
3) 执行echo 1 > /proc/sys/net/ipv4/ip_forward
4) “Unified sniffing”
5) 选择网卡
6) “Hosts”—-“Scan for hosts” 扫描存活主机
7) “Hosts list” 列出存活的主机
8) 当前存活主机
9) 选择攻击目标,“Add to Target 1”
10) 选择网关—-“Add to Target 2”
11) “Mitm”—-“Arp poisoning”
12) “确定”
13) “Start”—–“Start sniffing”
3、验证结果
1、被攻击目标上查看网关的mac地址
2、MAC地址相同
4、使用ettercap实现局域网实现局域网DNS欺骗
配置文件:
1、修改配置文件
#vim /usr/local/share/ettercap/etter.dns
2、欺骗攻击
# ettercap -T -q -i eth1 -P dns_spoof (插件名称) // //
渗透攻击平台Metasploit Framework(MSF)
1、启动MSF工具
2、MSF启动后的状态
3、加载攻击漏洞
Msf> use exploit/windows/browser/ms10_046_shortcut_icon_dllloader
4、设置攻击成功后返回shell的地址
5、设置本机地址
6、
7、开始漏洞攻击
8、新开个终端,编辑ettercap的配置文件
9、添加如下内容
10、开启DNS欺骗攻击
11、测试端上 (ipconfig /flushdns)
—–可以看到DNS的欺骗攻击已经成功
12、查看会话
13、拿到会话权,可以使用help查看此时可以的操作
14、也可以使用shell,进入cmd命令模式
密码破解工具
1、Ophcrack(多平台密码破解工具)
用途:主要用于windows帐号的密码破解
1、启动ophcrack图形化界面
2、ophcrack图形化界面
3、需要彩虹表文件的支持(需要人工下载)
4、可以load不同类型的文件
2、Hydra
用途:主要用于在线密码破解暴力破解,需要字典。支持命令行和图形模式。一般用于局域网内
1、启动图形化界面
#xhydra
2、设定目标主机、端口和服务
3、设置加载密码字典文件
4、设置线程和超时
5、用于代理。此处不做操作
6、“start”
3、Crunch
用途:字典生成工具
位置:/pentest/password/crunch
用法1:#./crunch 密码最短位数 最大位数 密码的可能性 -o 生成密码字典
#./crunch 5 5 1234567890 -o pass1.dic
用法2:#./crunch 最短位数 最大位数 charset.lst(策略集) 使用的策略 -o 生成密码字典
#./crunch 6 8 charset.lst numeric -o pass2.dic
数字取证工具
1、Dd
用途:指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换
用法:#dd if=/dev/sda1 of=/dev/hda1/forensic.image
2、Foremost
用途:可以快速回复硬盘上已删除的office文档、jpg、pdf等文件
配置文件:/usr/local/etc/foremost.conf
用法:formost -v -o 丢失数据恢复目录 -c /usr/local/etc/foremost.conf 镜像文件
3、Wipe
用法1:#wipe -i -f -q 要擦除的文件
用法2:#wipe -i -f -Q 擦除次数 要擦除的文件
用法3:#wipe -rfc 要擦除的目录