LOnils风迷 's Blog

hacking for fun

bt5使用教程----主要是渗透方面

by:chu

喜欢渗透,今年8月才开始接触bt5。看到论坛上有很多帖子,但主要都是讲pj的。如果单单是pj,对于bt5真的是大才小用了。所以决定开个帖子讲讲bt5在渗透方面的应用。这个帖子的主要是根据教主的视频教程,《LiNUX--BT4hei客手册》整理,加以网上资料,也算是我个人的学习笔记了吧,有兴趣的童鞋可以和我一起走进bt5。
(ps:教主的视频教程地址:https://v.ku6.com/playlist/index_6560628.html



一、BT5的u盘安装
由于bt5本来就是一个封装好的linux系统(基于Ubuntu),所以安装起来相对简单,主要需要如下工具:
1、4g u盘一枚(当然可以更大的,但是不推荐更小的了,原因是官方的bt5iso包就有2.60G大,再加上你的配置文件,太小的u盘安装后剩余的空间较小,会影响读取速度,直接的后果就是系统会卡。)
2、bt5安装包种子:下载地址如下
https://www.backtrack-linux.org/downloads/
根据自己的需要可以选择32/64位,KDE/GNOME版本进行下载。
3、unetbootin-windows-578
用于安装系统。
下载地址:
https://www.onlinedown.net/soft/88566.htm
ok,准备工作完成,下面开始安装。
首先,将你的u盘格式化为FAT32格式。
然后解压下载的unetbootin-windows-578 ,运行其中的unetbootin-windows-578 .exe,界面如下:
1.png   
单击界面右下部的  ...  选择你下载好的bt5-iso镜像。
下面的输入框是你想设置的保存配置文件大小,根据个人需要和u盘大小填写。比如我的u盘是4g的,我就填了800,2.6g的镜像+800M的配置文件,全部装载后约为3.7g,u盘还剩约300M容量,对读写速度不会有太大的影响。当然如果你的u盘足够大,也可以填的更大些,但一定要使u盘剩余几百兆空间,否则可能会影响读写的速度。、
ps:讲一下这种做法的好处,有很多童鞋安装好bt5启动u盘后,反映不能保存配置,这种安装方法安装后,就不再需要去savefiles了,直接就可以保存配置。
ok,然后驱动器一项选择你的u盘,点击确定就开始制作了。
2.png   
安装过程中,会停在第9个文件一段时间,
3.png   
注意此时并没有卡死,而是因为那个文件太大,写入需要一段时间,童鞋们不要急着关闭窗口结束进程,耐心等待几分钟就好。
安装完成,
4.png   
重启电脑,选择u盘启动,就可以进入bt5了。----------------------------------------------------------------------------------------------------------------------------------
二、信息收集
1、DNS信息收集
1)dnsenum
dnsenum的目的是尽可能收集一个域的信息,它能够通过谷歌或者字典文件猜测可能存在的域名,以及对一个网段进行反向查询。它可以查询网站的主机地址信息、域名服务器、MX record(函件交换记录),在域名服务器上执行axfr请求,通过谷歌脚本得到扩展域名信息(google hacking),提取自域名并查询,计算C类地址并执行whois查询,执行反向查询,把地址段写入文件。
命令行:root@bt:/pentest/enumeration/dns/dnsenum#
图形界面 :Applications --> BackTrack --> Information Gathering --> Network Analysis --> Dnsanalysis --> Dnsenum
常用命令参数举例:
./dnsenum.pl -f dns.txt -dnsserver 8.8.8.8 baidu.com -o output.txt
解释一下这些参数:-f dns.txt                       指定字典文件,可以换成dns-big.txt或者是自己的字典。
                               -dnsserver 8.8.8.8           指定dns服务器,一般可以直接使用目标服务器,其中8.8.8.8可以为ip或域名。
                                baidu.com                    目标域名。
                               -o output.txt                 输出结果到output.txt。                                                                                      如图收集百度的dns信息:
首先输入 ./dnsenum.pl baidu.com来检测百度的默认dns服务器的ip,即图中的dns.baidu.com,202.108.22.220,记下来,接下来会用到。
1.png   
然后以dns.baidu.com的ip为指定的dns服务器执行dnsenum:
./dnsenum.pl -f dns.txt dnsserver 202.108.22.220 baidu.com -o output.txt
2.png   
等待结束后,便可以到dnsenum目录下查看output.txt。
2)dnsmap
dnsmap和dnsenum一样是用户获得子域名的强有力工具,与dnsenum的不同点是,它把结果输出为csv格式,并且运行时不需要root权限。
命令行:root@bt:/pentest/enumeration/dns/dnsmap
图形界面:Applications -->  BackTrack --> Information Gathering --> Network Analysis --> Dnsanalysis --> Dmsmap
常用命令参数举例:
./dnsmap baidu.com -w wordlist_TLAs.txt -c output.csv
参数: baidu.com                                    目标域名。
           -w wordlist_TLAs.txt                     指定字典文件。
           -c output.csv                                 输出结果到output.csv。                                                                                       bt5中可以用于dns信息扫描的工具还有其他的,例如dnswalk和dnstracer等,功能大多有所重复,以此两个工具便可以完成大部分的dns信息扫描工作。                                                                                                                                             2、路由信息收集
1)tcptranceroute
我们都知道由于防火墙的使用,传统路由跟踪工具发出的ICMP应答或者udp数据包都被过滤掉了,导致无法进行完整的路由追踪。但是很多情况下,防火墙会允许发送TCP数据包通过防火墙到达指定端口,而这些端口是主机内防火墙背后的一些程序与外界进行连接用的。通过TCP SYN数据包代替ICMP应答或udp数据包,tcptranceroute可以穿透大多数的防火墙。
使用方法:
直接在命令行下:tcptranceroute baidu.com
发两张bt5下的tcptranceroute于传统的tranceroute的对比图:
3.png   

4.png   
差距显而易见吧。教主的教程中还讲解了tctrace,个人感觉两个工具在原理,用法上的差别都不大,所以不再进行讲解。下面讲解0trace。
2)0trace                                                                                                                                                                                   与tcptraceroute的主动发包不同,0trace通过建立一条tcp连接(可以是http或者smtp等)来列举出这条连接上每一跳的情况。这样便可以通过几乎所有的状态型防火墙,从而避免了tcptraceroute的丢包状况。
图形界面:Applications -->  BackTrack --> Information Gathering --> Network Analysis --> Identify Live Hosts--> 0Trace
基本使用方法如下:
①telnet 目标地址 +端口,建立一条tcp连接。
例:telnet baidu.com 80                                                                                                                                                        返回结果如下,表示tcp连接已建立,ok。
1.png   
②运行0trace,等待数据流。
直接在0trace下输入如下命令:
./0trace.sh eth0 baidu.com 80
参数解释:eth0                     网卡名称,也可以是eth1、eth2。。。但必须是能够上网的网卡
                 baidu.com           目标域名,也可以是ip地址。
                 80                         端口。由于是采用http建立的tcp连接,所以用80端口。如果你采用其他方式(smtp等),就改其他端口。
回车后进入等待状态,如图:
2.png   
说明工具已经启动,这时需要通过http(或smtp等)激活tcp连接,触发数据包。
③通过http等方式激活tcp连接,出发数据包,让工具抓包。
通过wget命令访问页面,命令如下:
wget baidu.com
如图:
1.png   
多敲几次命令,保证数据流足够用于分析。
④观察0trace界面,同时继续激活http连接,直到路径测试完成。
2.png                                          由于我是以百度进行的测试,所以结果是rejected,大家可以自行用其他网站测试。
毕竟是工具,可能会出现失败,我们可以多进行几次,成功率还是很高的。                                                                           3、All-in-one 智能收集
Maltego
讲信息收集就不得不说Maltego。Maltego应用于收集包括:域名、DNS名whios信息、ip地址等网络数据及通过公司或组织名称、邮件地址、网站、社区网络(facebook等)、电话号码收集关于个人的信息。可谓是社工利器。
Maltego与之前讲过的命令不同,它具有图形界面,所以使用起来也比较简单,只可惜是英文界面的。
软件路径:Applications --> BackTrack --> Information Gathering --> Network Analysis --> Dnsanalysis --> Maltego
在使用之前我们需要先去注册一个账号,注册地址:
https://www.paterva.com/web5/community/index.php#Register
简单的输入注册信息,确认下邮件即可。
ok,用你刚刚注册好的账号登陆。
随后我们可以看到软件的界面如下:
maltego1.png   
我们首先更新下数据。切换到Manage选项卡(在软件的顶部),点击Discover Transform(Advanced)即可。
更新完成后,我们点击软件左上角的“+”,添加一项任务。
点击软件左侧的Palette(没有的童鞋可以通过软件上方的zoom选项卡调出来),我们可以看到Maltego可以收集的信息非常多,这里我就以通过人名搜索信息为例给大家讲解一下。
maltego2.png   
我们在Palette中选中Person拖入主窗体(Main View),点击Entity List选项更改,双击数值框,更改Full Name为李开复(百度ceo)。当然也可以通过调出Property View的方式更改。
maltego3.png   
然后再切回Main View,右键选择All transforms。期间可能会要求确认相关协议或信息,我们根据要求输入空格、选择accept即可,然后点击Run,软件就开始工作了。
maltego4.png   
这里我们可以通过软件下方的进度条查看任务的进度。 
立刻我们就可以看到,软件收集到了非常多的信息包括主机,甚至邮件地址,这对于我们的社工无疑是非常重要的。
maltego5.png   
在收集到的信息中,我们还可以点击单个信息继续右键进行搜索,层层深入,获得更多有效的信息。
好了,只是简单的通过人名搜索讲一下Maltego的大致用法,其他类型大家可以自行去摸索。   ----------------------------------------------------------------------------------------------------------------------------------                                           三、扫描工具
1、主机发现
1)Arping
由于防火墙的使用等原因,部分主机会出现ping不通的状况。Arping通过发送Arp request的方式进行测试(直连网络),确定一个特定的ip在线。
直接在终端中输入命令使用。
基本命令格式:arping -c 3 192.168.1.1
参数解释:-c 3                                           发送的Arp请求包的数量
                 192.168.1.1                                目标地址
如果主机在线,则返回相应的包,反之则提示丢包。 1.png                                      2)Fping
fping可以说是ping功能的增强版,它可以通过轮转方式并行的发出大量ping请求,高效快速的同时ping多台主机。
图形界面:Applications -->  BackTrack --> Information Gathering --> Network Analysis --> Identify Live Hosts--> Fping
也可以直接在终端中输入fping。
fping有一下两种用法:
①ping文件中的ip地址。
我们首先在根目录下建立一个ip列表,ip.txt,并把ip地址按每行一个的格式写入。如图: 1.png   
ok,然后是具体的命令:fping -a -s -f ip.txt
参数解释:                -a                                                       显示存活主机
                                  -s                                                       显示最终扫描结果
                                  -f ip.txt                                              读取文件

2.png   
②扫描ip段具体命令:fping -a -s -r 1 -g 192.168.1.1 192.168.1.255
参数解释:                 -r 1                                                    尝试次数
                                   -g 192.168.1.1 192.168.1.255           ip段
3.png                                          结果:
4.png                                          3)Genlist
genlist可以快速的扫描ip段内的存活主机,而且结果呈列表式,因此与fping相比,更简洁明了。
通过直接在终端内运行命令使用。
基本命令:genlist -s 192.168.1.\*
参数解释:-s 192.168.1.\*                                   目标ip段
1.png                                          4)Nbtscan                                                                                                                                                                         nbtscan是一个扫描网段内微软主机netbios信息的工具,只适用于局域网,可以显示ip,主机名,用户名及mac地址等。速度较快。
通过直接在终端内运行命令使用。
基本命令:nbtscan 192.168.1.1-255
这个参数就不用我解释了吧。。。
2.png   
由于我没有架设windows系统,所以显示为空。                                                                                                                     5)Protos
Protos是一个ip协议的扫描工具,特别适用于路由。不过它的速度,个人感觉有点慢。
图形界面:Applications -->  BackTrack --> Information Gathering --> Network Analysis -->Route Analysis-->Protos
基本命令格式:./protos -i eth0 -d 192.168.1.1 -v
参数解释:         -i eth0                                                        指定网卡
                          -d 192.168.1.1                                            目标地址
                          -v                                                                详细显示

敲完命令后需要耐心等一会。。。
3.png   



还有些不成熟,敬请批评指正哈~

评论(1)
热度(2)