【Kali】简单记录

信息收集

DNS记录分析

host

host www.example.com
host -a example.com

host指令查询域名信息的DNS服务器,就是文件/etc/resolv.conf指定的DNS服务器。如果想查询其他的DNS服务器,可在指令的尾部直接添加DNS服务器地址。

dig

dig example.com any

dig指令仅会返回该域的A记录。如需查询全部类型的DNS数据,我们可把type选项设定为any。
这条指令返回了该域名的SOA记录、NS记录、A记录和AAAA记录。
在使用dig指令进行域传输时,我们必须设置DNS服务器为权威DNS,并且设置传输类型为axfr。

dnsenum

另外,我们可利用dnsenum程序收集DNS数据。这个程序能够收集的DNS信息分为下述几类:

● 主机IP 地址;

● 该域的DNS 服务器;

● 该域的MX 记录。

在这一章里,您会发现不同程序的返回结果十分相似。这是因为我们就是在通过不同的程序验证相同的数据。返回同一信息的程序越多,我们对这一信息就越有信心。

除了获取DNS信息的功能之外,dnsenum还有下述几个特性。

● 它能够通过谷歌捜索其他的域名和子域名。

● 可使用字典文件对子域名进行暴力破解。Kali Linux 收录的dnsenum 自带有字典文件(dns.txt),该字典可测试1480个子域名。此外另有可测试266930个子域名的字典文件dns-big.txt。

● 可对C 类网段进行whois 査询并计算其网络范围。

● 可对网段进行反向査询。

● 采用多线程技术,可进行并发査询。
在不能进行域传输的情况下,我们可以使用字典文件对子域名进行暴力破解。例如,如果使用字典文件dns.txt暴力破解example.com的子域名,可使用下述指令。

dnsenum -f dns.txt example.com

该指令的返回结果如下。

dnsdict6

路由信息

tcptraceroute

tcptraceroute是traceroute程序的补充工具。传统的traceroute程序在其发送的UDP 或ICMP echo 数据包里,设置有特定的TTL(Time To Live)标志位。它把TTL的值从1开始递增,直到数据包到达目标主机为止。而tcptraceroute则是使用TCP数据包进行测试,它利用TCP SYN(握手请求)数据包进行路由信息探测。

相比其他程序,tcptraceroute 的优点在于其较高的通过率。如果在渗透测试人员和目标主机之间的防火墙禁止traceroute数据通过,那么traceroute指令就完全发挥不了作用。但是只要防火墙允许访问目标主机的特定TCP端口,就可以使用tcptraceroute程序穿过防火墙到测试目标主机。

在使用 tcptraceroute 时,如果相应的目标端口是开放的(open),程序将会收到SYN/ACK数据包;而如果目标端口是关闭的,那么它会收到一个RST数据包。

下面我们来使用tcptraceroute。假如我们事先知道目标主机为Web服务器开放了TCP协议的80端口,那么就可以使用下述指令。

tcptraceroute www.example.com

tctrace

我们同样可以选用 tctrace 程序分析路由信息。这个程序通过向目标主机发送 TCP SYN数据包来获取相应信息。

tctrace -i<device> -d<targethost>

参数中的指的是网卡接口,则是被测试的目标主机。

例如,我们可以使用下述指令获取本机和www.example.com之间的路由信息。

tctrace -i eth0 -d www.example.com

搜索引擎

目标识别

arping

我们使用arping程序判断某MAC地址的主机是否在线。

arping 192.168.56.102 -c 1

此时可以使用下述arping指令检测192.168.56.102是否被他人占用。

arping -d -i eth0 192.168.56.102 -c 2

fping

存活主机检测

fping -g 192.168.56.0/24

识别操作系统

p0f

p0f采用被动方式的方法探测目标主机的操作系统类型。这个工具可以识
别以下几种主机:
● 连接到您主机的机器(SYN 模式,即默认模式);
● 您主机可以访问的机器(SYN+ACK 模式);
● 您主机不能访问的机器(RST+模式);
● 您可以监控到其网络通信的机器。

nmap –O 192.168.56.102

服务枚举

端口扫描

nmap

TCP 连接扫描(-sT):指定这个选项后,程序将和目标主机的每个端
口都进行完整的三次握手。如果成功建立连接,则判定该端口是开放端口。
由于在检测每个端口时都需要进行三次握手,所以这种扫描方式比较慢,而
且扫描行为很可能被目标主机记录下来。如果启动Nmap的用户的权限不
足,那么默认情况下Nmap程序将以这种模式进行扫描。
● SYN 扫描(-sS):该选项也称为半开连接或者SYN stealth。采用该
选项后,Nmap将使用含有SYN标志位的数据包进行端口探测。如果目标主
机回复了SYN/ACK包,则说明该端口处于开放状态:如果回复的是RST/
ACK包,则说明这个端口处于关闭状态;如果没有任何响应或者发送了ICMP
unreachable信息,则可认为这个端口被屏蔽了。SYN模式的扫描速度非常
好。而且由于这种模式不会进行三次握手,所以是一种十分隐蔽的扫描方
式。如果启动Nmap的用户有高级别权限,那么在默认情况下Nmap程序将以
这种模式进行扫描。
● TCP NULL(-sN)、FIN(-sF)及XMAS(-sX)扫描:NULL 扫描不
设置任何控制位;FIN扫描仅设置FIN标志位:XMAS扫描设置FIN、PSH和
URG的标识位。如果目标主机返回了含有 RST 标识位的响应数据,则说明该
端口处于关闭状态;如果目标主机没有任何回应,则该端口处于打开|过滤
状态。
● TCP Maimon扫描(-sM):Uriel Maimon 首先发现了TCP Maimom
扫描方式。这种模式的探测数据包含有FIN/ACK标识。对于BSD衍生出来的
各种操作系统来说,如果被测端口处于开放状态,主机将会丢弃这种探测数
据包;如果被测端口处于关闭状态,那么主机将会回复RST。
● TCPACK 扫描(-sA):这种扫描模式可以检测目标系统是否采用了数
据包状态监测技术(stateful)防火墙,并能确定哪些端口被防火墙屏蔽。这
种类型的数据包只有一个ACK标识位。如果目标主机的回复中含有RST标
识,则说明目标主机没有被过滤。
● TCP 窗口扫描(-sW):这种扫描方式检测目标返回的RST数据包的
TCP窗口字段。如果目标端口处于开放状态,这个字段的值将是正值;否则
它的值应当是0。
● TCP Idle 扫描(-sI):采用这种技术后,您将通过指定的僵尸主机发
送扫描数据包。本机并不与目标主机直接通信。如果对方网络里有IDS,IDS
将认为发起扫描的主机是僵尸主机。
Nmap的scanflags选项可设定自定义的TCP扫描方式。这个选项的参数可
以用数字表示(例如,9代表PSH和FIN标识)。这个选项也支持标识位的符
号缩写。在使用符号缩写时,仅需要将URG、ACK、PSH、RST、SYN、
FIN、ECE、CWR、ALL和NONE以任意顺序进行组合。例如:–scanflags
URGACKPSH 将设置URG、ACK 和PSH 标识位。
UDP扫描仅有一种扫描方式(-sU)
默认情况下,Nmap将从每个协议的常用端口中随机选择1000个端口进
行扫描。其nmap-services文件对端口的命中率进行了排名。
如需更改端口配置,可使用Nmap的以下几个选项。
● -p端口范围:只扫描指定的端口。扫描1~1024号端口,可设定该选
项为–p 1-1024。扫描1~65535端口时,可使用-p-选项。
● -F(快速扫描):将仅扫描100 个常用端口。
● -r(顺序扫描):指定这个选项后,程序将从按照从小到大的顺序扫
描端口。
● --top-ports <1 or greater>:扫描nmap-services 里排名前N 的端
口。
Nmap支持以下几种输出形式。

交互(屏幕)输出:Nmap把扫描结果发送到标准输出设备上(通常
为终端/控制台),这是默认的输出方式。
● 正常输出(-oN):与交互输出类似,但是不显示runtime 信息和警告
信息。
● XML 文件(-oX):生成的 XML 格式文件可以转换成 HTML 格式文
件,还可被Nmap 的图形用户界面解析,也便于导入数据库。本文建议您尽
量将扫描结果输出为XML文件。
规避检测的选项
在渗透测试的工作中,目标主机通常处于防火墙或 IDS 系统的保护之
中。在这种环境中使用 Nmap 的默认选项进行扫描,不仅会被发现,而且往
往一无所获。此时,我们就要使用Nmap规避检测的有关选项。

-f(使用小数据包):这个选项可避免对方识别出我们探测的数据
包。指定这个选项之后,Nmap将使用8字节甚至更小数据体的数据包。

–mtu:这个选项用来调整数据包的包大小。MTU(Maximum
Transmission Unit,最大传输单元)必须是8的整数倍,否则Nmap将报错。
● -D(诱饵):这个选项应指定假 IP,即诱饵的 IP。启用这个选项之
后,Nmap 在发送侦测数据包的时候会掺杂一些源地址是假IP(诱饵)的数
据包。这种功能意在以藏木于林的方法掩盖本机的真实 IP。也就是说,对方
的log还会记录下本机的真实IP。您可使用RND生成随机的假IP地址,或者用
RND:number的参数生成个假IP地址。您所指定的诱饵主机应
当在线,否则很容易击溃目标主机。另外,使用了过多的诱饵可能造成网络
拥堵。尤其是在扫描客户的网络的时候,您应当极力避免上述情况。
● --source-port 或-g(模拟源端口):如果防火墙只允
许某些源端口的入站流量,这个选项就非常有用。

–data-length:这个选项用于改变Nmap
发送数据包的默认数据长
度,以避免被识别出来是Nmap的扫描数据。
● --max-parallelism:这个选项可限制Nmap 并发扫描的最大连接数。

–scan-delay

识别VPN服务器

ike-scan -M -A –Pike-hashkey 192.168.0.10

之后,我们使用psk-crack程序破解VPN连接的哈希值。有关指令如下。

psk-crack –d rockyou.txt ike-hashkey

此处,-d选项用于指定字典文件。

漏洞映射

exploitdb

cd /usr/share/exploitdb/

msfconsole

msfconsole

show auxiliary:列出全部的辅助工具模板。
● show exploits:列出框架下所有的漏洞利用程序。
● show payloads:列出所有平台下的有效载荷。如果已经选定了一个
漏洞利用程序,再使用该命令就只会显示相关的载荷。例如,Windows的载
荷将显示与 Windows相关的漏洞利用模板。
● show encoders:显示可用的编码工具模板。
● show nops:显示所有可用的NOP 生成程序。
● show options:显示指定模板的全部设置和选项信息。
● show targets:显示exploit 支持的操作系统类型。
● show advanced:列出所有高级配置选项,以便进行微调。
我们将最具价值的几个常用命令总结为下述表格。您可以在
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

提权

arpspoof

通过以下命令,对被测主机实施ARP欺骗。

arpspoof -t 192.168.65.129 192.168.65.1

Dsniff

Dsniff
能够在网络中捕获密码。目前,它可从以下协议中捕获密码:
FTP、Telnet、SMTP、HTTP、POP、poppass、NNTP、IMAP、SNMP、
LDAP、Rlogin、RIP、OSPF、PPTP
MS-CHAP、NFS、VRRP、YP/NIS、
SOCKS、X11、CVS、IRC、AIM、ICQ、
Napster、PostgreSQL、Meeting
Maker、Citrix
ICA、Symantec
pcAnywhere、NAI
Sniffer、Microsoft
SMB、Oracle SQL*Net、Sybase 以及Microsoft SQL。
如需启动dsniff程序,可在终端中使用下述指令。

dsniff -h

上述指令将会在屏幕上显示程序的使用说明。我们将使用它捕获FTP 密
码。在本例的演示中,FTP客户端的IP是192.168.2.20,服务器IP则是
192.168.2.22,这两台主机通过集线器连接。攻击人员的主机IP为
192.168.2.21。
在攻击人员的测试主机上执行下述指令。

dsniff -i eth0 -m

其中,选项-i eth0 将使Dsniff 程序监听eth0 网卡。而选项-m 则用于启
用程序的自动协议检测功能。
然后,在装有FTP客户端程序的主机上,使用客户端程序登录FTP服务
器。
dsniff的运行结果如下。

dsniff: listening on eth0
----------------
20/08/13 18:54:53 tcp 192.168.2.20.36761 -> 192.168.2.22.21 (ftp)
USER user
PASS user01

从中可以看到,dsniff捕获了客户端登录FTP服务器时所用的用户名和密
码。

### 回答1: Kali是一种流行的渗透测试和网络安全工具的Linux发行版。要查询内网的MAC地址,可以使用以下步骤: 1. 打开终端:在Kali的桌面或应用程序菜单中,找到终端图标并点击打开。 2. 启动网络接口:在终端输入以下命令以启动网络接口: ``` sudo ifconfig eth0 up ``` 这里的"eth0"是一种常见的网络接口名称,如果你使用的是其他网络接口名称,请相应地修改。 3. 扫描网络:使用以下命令扫描当前网络中的设备: ``` sudo arp-scan --localnet ``` 这将扫描所有与你的Kali系统相连的设备,并显示它们的IP地址和MAC地址。 4. 查找目标设备:在输出结果中,查找你想要查询MAC地址的目标设备的IP地址。然后,记录其对应的MAC地址。MAC地址将以十六进制格式显示,通常由6组冒号分隔的数字和字母组成。 通过这些步骤,你可以在Kali中查询内网的MAC地址。请注意,你需要对网络扫描和查询设备MAC地址进行合法和授权的活动。 ### 回答2: 在Kali中查询内网的MAC地址,我们可以使用一些命令如ifconfig、arp和nmap。 首先,我们可以使用ifconfig命令来查看Kali机器自己的网络接口以及对应的MAC地址。打开终端,输入ifconfig命令,列出网络接口信息,会显示每个接口的MAC地址。 然后,我们可以使用arp命令来查看网络中其他设备的MAC地址。在终端中输入arp命令,可以列出路由器和其他设备的IP地址和对应的MAC地址。但请注意,arp只能查看本地网络中已经响应过通信的设备,对于那些没有响应过通信的设备,我们无法通过arp来查询到。 此外,我们还可以使用nmap工具来扫描局域网中的设备并获取他们的MAC地址。使用nmap需要安装该工具并学习其使用方法。nmap可以扫描整个局域网或指定的IP范围,并提供设备的详细信息,包括MAC地址。 需要注意的是,以上方法均需要在内网环境中操作,并且具有足够的权限才能查询到MAC地址。 ### 回答3: Kali查询内网MAC地址的方法很简单,可以使用命令行工具来完成。下面是具体的步骤: 首先打开终端,可以通过点击左上角的“Applications”(应用程序)菜单,然后选择“Terminal”(终端)来打开。也可以使用快捷键Ctrl+Alt+T来快速打开终端。 接下来,在终端中输入以下命令: ```shell sudo arp-scan --interface=<your_network_interface> --localnet ``` 请将`<your_network_interface>`替换为您正在使用的网络接口名。例如,如果您正在使用以太网接口,则可以将其替换为"eth0"。如果您使用的是无线网卡,则可能是"wlan0"或"wlp2s0"。 执行命令后,系统可能会提示您输入密码。请输入您的密码,并按下Enter键。 然后,命令行工具将扫描您的本地网络,并显示所有连接到网络的设备的MAC地址及其相关信息。 扫描结果将显示每个设备的IP地址、MAC地址和设备型号等信息。您可以通过查看MAC地址列,找到您感兴趣的设备的MAC地址。 请注意,在执行这个命令之前,确保您已经获得了合法的授权,并且只能在您有权访问的网络上使用。这是为了避免非法侵入他人的网络并保护您和他人的隐私。 希望这个回答能够帮助到您!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lucky_Turtle

感谢您的打赏,作者会多多努力的

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值