hunt和sniffit 的一些用法(非unix人员勿入)
hunt在你需要易于读取的结果室的另外一种选择。它具有直观的命令追踪和会话监录功能。
作者:Pavel Krauz
条件: C, IP头, Linux 2.0.35+, 支持LinuxThreads的GlibC 2.0.7
配置文件:无
位置:http://www.cri.cz/kra/index.html
安全历史:无
注:作者提供有动态链接和静态连接的二进制发布。
hunt是以tar.gz的格式发布的,文件名为hunt-1_3bin.tgz。首先需要解压缩:
$tar xvfz hunt-1_3bin.tgz
则hunt被解压缩到新创建的目录hunt-1.3种,包括以下内容:
-rw-r--r-- 1 206 users 1616 Apr 2 03:54 CHANGES
-rw-r--r-- 1 206 users 17983 Oct 25 1998 COPYING
-rw-r--r-- 1 206 users 312 Jan 16 04:54 INSTALL
-rw-r--r-- 1 206 users 727 Feb 21 11:22 Makefile
-rw-r--r-- 1 206 users 27373 Feb 15 12:44 README
-rw-r--r-- 1 206 users 167 Dec 4 14:29 TODO
-rw-r--r-- 1 206 users 5067 Feb 13 04:23 addpolicy.c
-rw-r--r-- 1 206 users 7141 Feb 21 23:44 arphijack.c
-rw-r--r-- 1 206 users 25029 Apr 2 03:26 arpspoof.c
drwxr-xr-x 2 206 users 1024 Apr 9 02:03 c
-rw-r--r-- 1 206 users 7857 Nov 9 1998 hijack.c
-rw-r--r-- 1 206 users 5066 Dec 2 12:55 hostup.c
-rwxr-xr-x 1 206 users 84572 Apr 9 02:03 hunt
-rw-r--r-- 1 206 users 24435 Apr 2 03:26 hunt.c
-rw-r--r-- 1 206 users 16342 Mar 30 01:56 hunt.h
-rwxr-xr-x 1 206 users 316040 Apr 9 02:03 hunt_static
-rw-r--r-- 1 root root 265 May 20 22:22 huntdir.txt
-rw-r--r-- 1 root root 2517 May 20 22:19 huntlog.txt
-rw-r--r-- 1 206 users 6249 Feb 21 11:21 macdisc.c
-rw-r--r-- 1 206 users 12105 Feb 21 11:35 main.c
-rw-r--r-- 1 206 users 12000 Feb 6 02:27 menu.c
-rw-r--r-- 1 206 users 7432 Apr 2 03:53 net.c
-rw-r--r-- 1 206 users 5799 Feb 11 04:21 options.c
-rw-r--r-- 1 206 users 11986 Feb 14 04:59 resolv.c
-rw-r--r-- 1 206 users 1948 Oct 25 1998 rst.c
-rw-r--r-- 1 206 users 9545 Mar 30 01:48 rstd.c
-rw-r--r-- 1 206 users 21590 Apr 2 03:58 sniff.c
-rw-r--r-- 1 206 users 14466 Feb 21 12:04 synchijack.c
-rw-r--r-- 1 206 users 2692 Feb 19 00:10 tap.c
-rw-r--r-- 1 206 users 4078 Feb 15 05:31 timer.c
-rw-r--r-- 1 206 users 2023 Oct 25 1998 tty.c
-rw-r--r-- 1 206 users 7871 Feb 11 02:58 util.c
静态二进制发布为hunt_static,推荐使用该版本,因为有时候从源代码编译可能会出现缺少一些库的错误。使用下面命令来执行hunt:
$hunt_static
运行hunt你将惊奇地发现hunt是基于curse的,因此有非常友好的交互界面。启动以后菜单如下所示:
--- Main Menu --- rcvpkt 0, free/alloc 63/64 ------
l/w/r) list/watch/reset connections
u) host up tests
a) arp/simple hijack (avoids ack storm if arp used)
s) simple hijack
d) daemons rst/arp/sniff/mac
o) options
x) exit
* >
在整个例子中,我将从GNSS登录到linux.test.net中进行测试。
GNSS 3% telnet 192.168.0.2
Trying 192.168.0.2...
Connected to 192.168.0.2.
Escape character is '^]'.
Caldera OpenLinux(TM)
Version 1.3
Copyright 1996-1998 Caldera Systems, Inc.
login:
[hapless@linux hapless]$ finger root
Login: root Name: root
Directory: /root Shell: /bin/bash
On since Thu May 20 21:57 (PDT) on tty1 1 minute idle
On since Thu May 20 22:02 (PDT) on tty2 7 minutes 19 seconds idle
On since Thu May 20 21:59 (PDT) on tty3 15 seconds idle
No mail.
No Plan.
[hapless@linux hapless]$ last root
root tty2 Thu May 20 22:02 still logged in
root tty3 Thu May 20 21:59 still logged in
root tty1 Thu May 20 21:57 still logged in
root tty2 Thu May 20 19:46 - down (00:26)
root tty1 Thu May 20 19:44 - 20:12 (00:27)
root tty3 Thu May 20 19:44 - down (00:2
root tty3 Thu May 20 19:42 - 19:44 (00:01)
root tty1 Thu May 20 19:41 - 19:42 (00:00)
root tty3 Thu May 20 19:28 - 19:41 (00:12)
root tty2 Thu May 20 19:11 - 19:42 (00:31)
root tty1 Thu May 20 19:07 - 19:40 (00:32)
root tty1 Thu May 20 18:57 - 19:07 (00:09)
root tty1 Mon May 17 22:32 - down (00:29)
最后检查了/etc/passwd,在整个过程中都运行有hunt进行嗅探:
--- Main Menu --- rcvpkt 0, free/alloc 63/64 ------
l/w/r) list/watch/reset connections
u) host up tests
a) arp/simple hijack (avoids ack storm if arp used)
s) simple hijack
d) daemons rst/arp/sniff/mac
o) options
x) exit
*> w
0) 192.168.0.1 [1049] --> 192.168.0.2 [23]
choose conn> 0
dump [s]rc/[d]st/oth > b
注:上面的输入(黑色字体部分)指示hunt来记录0号连接,并输出源和目的信息。
则hunt将显示hapless的所有活动信息到终端屏幕上:
22:18:43 up 21 min, 4 users, load average: 0.00, 0.01, 0.00
TRL-C to break
hhaapplleessss
Password: unaware
[hapless@linux2 hapless]$ cclleeaarr
[hapless@linux2 hapless]$ wwhhoo
root tty1 May 20 21:57
ww
22:18:43 up 21 min, 4 users, load average: 0.00, 0.01, 0.00
[hapless@linux2 hapless]$ mmoorree //eettcc//ppaasssswwdd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:
daemon:x:2:2:daemon:/sbin:
adm:x:3:4:adm:/var/adm:
lp:x:4:7:lp:/var/spool/lpd:
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:11:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:
news:x:9:13:news:/var/spool/news:
uucp:x:10:14:uucp:/var/spool/uucp:
operator:x:11:0:operator:/root:
games:x:12:100:games:/usr/games:
gopher:x:13:30:gopher:/usr/lib/gopher-data:
ftp:x:14:50:FTP User:/home/ftp:
man:x:15:15:Manuals Owner:/:
majordom:x:16:16:Majordomo:/:/bin/false
postgres:x:17:17:Postgres User:/home/postgres:/bin/bash
nobody:x:65534:65534:Nobody:/:/bin/false
anon:x:100:100:Anonymous:/home/anon:/bin/bash
hapless:x:500:500:Caldera OpenLinux User:/home/hapless:/bin/bash
[hapless@linux2 hapless]$
可以的看到,hunt的输出非常直观明了,易于阅读。然而hunt还提供有以下工具:
允许指定任意一个感兴趣的连接,而不是记录所有的东西。
允许指定任意一个连接,而不仅仅是以SYN刚刚开始的连接。It offers spoofing tools.
提供活动会话劫持。
其特有的特色功能和易于使用的界面,使得它对于linux入门者是一个非常好的选择。
sniffit
sniffit是针对哪些需要了解更多信息的人的。
作者:Brecht Claerhout
条件:C, IP 头文件
配置文件:见后面的讨论
安全历史:无
注:sniffit功能非常强大,但是不易学习使用。
$tar xvfz sniffit_0_3_7.tar.gz
$./configure (配置命令将检测系统是否符合要求)
$make (编译源代码)
strip sniffit (精简二进制代码的大小)
现在就可以使用sniffit了(sniffit的配置我们最后讨论)。
语法:
sniffit [-xdabvnN] [-P proto ] [-A char ] [-p port ] [(-r|-R) recordfile ] [-l sniflen ] [-L logparam ] [-F snifdevice ] [-D tty ] [-M plugin ] [(-t Target-IP | -s Source-IP ) | (-i|-I) | -c config-file ]
sniffit是一个TCP/IP/ICMP协议数据报监听器,其能给出关于这些协议数据报非常详细的技术信息(SEQ,ACK,TTL,Windows,....)及符合监听条件的数据报的各种不同的格式(hex或纯文本)
sniffit缺省的可以处理以太和PPP设备。但是也可以用在其他的设备上(参见README.FIRST和sn_config.h)。 sniffit可以进行方便的配置实现对接入的数据报进行过滤。而配置文件允许非常确定地指定需要处理的数据报。 sniffit同样有一个交互式界面。
选项:
-v
显示版本信息
-t 目标地址
只处理目的地址为"目标地址"的数据,和 '-s' '-c' '-v' 选项不兼容
源地址
只处理发送地址为"源地址"的数据,和'-t' '-c' '-v' 选项不兼容
-c 配置文件
在配置文件中对包过滤规则进行定义,和-t' '-s' '-v'不兼容
-R 文件
将输出结果记录到"文件"中(和'-v'不兼容)
-n
关闭IP数据报校验,使伪造的数据也可以显示出来
-x
打印TCP数据报的扩展信息到标准输出中((SEQ,ACK, Flags等),往往用来跟踪欺骗,包丢失及实现其他的网络调试测试任务。和'-i' 'I' '-v'不兼容
-d
输出到缺省的文件中,一般文件名为源目的地址的组合如:192.168.0.232.1120-192.168.0.231.80
-a
输出ascII码格式,不可打印的字符用”.”表示
-P 协议
指定需要处理的数据的协议类型,IP,TCP,ICMP,UDP等。
-p 端口
只处理目的端口为"端口"的数据。
-l sniflen
在正常模式下,记录的数据的总和(缺省为300字节),每次的连接的前sniflen个字节被记录下来。
-F device
指定监听某个设备的数据如eth0,eth1等
-D tty
所有的记录信息都被输出到指定的tty
举例:
要监听从192.168.0.233发往192.168.0.231的访问WWW请求数据:
[root@lix /tmp]#/usr/sbin/sniffit -p 80 -P TCP -s 192.168.0.233 -d ttyp1
Packet ID (from_IP.port-to_IP.port): 192.168.0.233.1060-192.168.0.231.80
45 00 00 2C 6D 0B 40 00 80 06 0A A0 C0 A8 00 E9 C0 A8 00 E7 04 24 00 50 00 4E
89 2A 00 00 00 00 60 02 20 00 67 19 00 00 02 04 05 B4
注:192.168.0.231为一台运行linux的服务器
如果希望将输出定向到一个文件,则
[root@lix /tmp]# /usr/sbin/sniffit -p 80 -P TCP -s 192.168.0.233 -R /tmp/wwwlog
如果希望查看从192.168.0.231返回给192.168.0.225的www页面数据,并且将数据存储在一个文件/tmp/wwwlog中:
[root@lix /tmp]# /usr/sbin/sniffit -P TCP -t 192.168.0.225 -R /tmp/wwwlog
注:在225上不要开别的到231的连接,如telnet 否则 数据就回混杂在一起。
如果希望查看从192.168.0.233发给192.168.0.231的ICMP数据,并且将其显示到控制台上:
[root@lix /tmp]# /usr/sbin/sniffit -P ICMP -t 192.168.0.233 -d ttyp1
sniffit支持配置文件,通过配置文件可以提供更强大的嗅探控制。配置文件格式包含五个不同的字段,意义分别如下:
字段 1—select 或 deselect。指示sniffit捕捉后面条件指定的数据或者不捕捉。
字段 2—from, to, 或 both。 H指示sniffit捕捉来自、发往或双向的指定的主机的数据。
字段 3—host, port, or mhost。指定一个或多个目标主机。mhost可以用来指定多个主机,如192.168.0。
字段 4—hostname, port number, or multiple-host 列表。
字段 5—端口号。
例如:
select from host 192.168.0.1
select from host 192.168.0.1 80
select both port 23
sniffit将捕捉来自两个主机的telnet和www的所有信息。
select both mhosts 100.100.12.
deselect both port 80
select both host 100.100.12.2
sniffit将捕捉100.100.12.*相关除www以外的所有数据,但是显示100.100.12.2的www数据。
hunt和sniffit 的一些用法(非unix人员勿入)相关推荐
- 关于Google神牛Jeff Dean的笑话,非程序员勿入(转)
关于Jeff Dean: http://research.google.com/people/jeff/,简单来说,这货是Google牛逼的源泉之一.因为此人实在太牛了,于是出现了关于他有多牛的几个笑 ...
- target存放的是编译后的.class文件地方 默认情况下不会讲非class文件放入进入 如果要使用非.class文件 需要通过增加配置方式自动加入文件...
target存放的是编译后的.class文件地方 默认情况下不会讲非class文件放入进入 如果要使用非.class文件 需要通过增加配置方式自动加入文件 转载于:https://www.cnblog ...
- 到底谁在使用低代码?钉钉低代码用户画像:非IT人员占8成
编辑 | 宋慧 供稿 | 钉钉 头图 | 付费下载于视觉中国 低代码开发需求到底有多大?谁在使用低代码开发?3月2日,钉钉发布低代码开发者画像:一二线城市的80.90后是低代码开发的主力军,但20岁以 ...
- 7类非京籍人员子女可按北京户口就近入学
记者8日从北京市教委了解到,7类非京籍人员子女可依京籍适龄儿童按照免试.就近入学原则在京登记入学. 这7类人员子女是:持有区县劳动和社会保障局开具的"原北京下乡青年子女身份证明", ...
- 非财务人员财务培训_为非财务领导的公司工作
非财务人员财务培训 免责声明 :这篇文章涉及金融,管理和社会学的各个方面,而我对此还远远不够. 但是,我有很多在具有重大影响的公司工作的经验,我无法抗拒得出自己的结论. 我会很乐意听听现实的解决方案. ...
- 非酋用计算机,拯救非酋带你入欧 炉石传说玄学开包经验
原标题:拯救非酋带你入欧 炉石传说玄学开包经验 众所周知炉石传说是一款暴雪推出的有魔兽背景的卡牌游戏,既然叫卡牌游戏那要想在游戏中战无不胜,就必须得有好卡.如何才能获得好卡,当然是开卡包了.但是这个开 ...
- linux中daemonize用法,daemonize Unix系统后台守护进程管理软件
在我们的工作中,很多时候都需要在linux中后台运行程序, 方法1: nohup & 方法2: daemonize Unix系统后台守护进程管理软件 优点:更加正规 后台运⾏更稳定 git c ...
- 双非毕业生,如何入职大厂
个人介绍 大家好,我是一名双非学校的统计学毕业生,现就职于一家互联网大厂.今天我与大家分享一下我的"数据分析"学习之路和收藏的学习资料,希望大家能有所收获. 其实,我的数据分析之路 ...
- 非财务人员的财务培训教(一.二)------财务基础知识
二 . 基本财务管理知识 第一节 财务管理基础知识(一) 财务与会计的关系 会计的基础知识 ( 一 ) 财务与会计的关系 财务与会计的内涵 1.会计 会计工作主要是解决三个环节的问题: 会计凭证 会计 ...
- Python3,os模块还可以这样玩,自动删除磁盘文件,非必要切勿操作。
删除磁盘下所有的文件 1.引言 2.代码实战 2.1 模块介绍 2.2 获取盘符 2.3 获取盘符下的目录 2.3.1 os.listdir() 2.3.2 os.environ 2.3.3 os.g ...
最新文章
- 做acm 需要学的算法
- 阿里开源组装式 Flutter 应用框架 Fish Redux
- Titanium开发环境搭建第一个坑
- python modbus类封装_Python 中引入一个文件,模块的概念
- php 如何获取表格数据类型,使用phpword获取doc中的表格数据
- Django框架(十二)-- Djang与Ajax
- OpenFire源码学习之二十一:openfie对用户的优化(上)
- hl3150cdn打印不了照片_揭秘:薇娅力荐国产品牌极印,照片打印机爆卖的秘密
- 《如何搭建小微企业风控模型》第五节 特征工程(上)
- PADS2007破解方法之图文并茂版----本人亲自实践
- eclipse32位python版下载_32位eclipse怎么安装?
- HSRP在企业网中的应用(CISCO小凡模拟器)
- cad灯具图标_灯具在CAD中怎么表示出来 都代表哪种灯 谢谢
- 复联3观影指南丨漫威宇宙里的AI黑科技
- 转载:图像噪声的成因分类与常见图像去噪算法简介
- 批量cherry-pick
- Vue Error-报错信息:Syntax Error: Assigning to rvalue.
- Microsoft fsx 飞行模拟器 SDK的一些心得
- vue:单文件组件模板
- 百度地图SDK for Android【离线地图】
热门文章
- 未来15年,还有一波“增量”机会
- 基于VUE + Echarts 实现可视化数据大屏智慧校园可视化
- October CMS - 快速入门 3 创建主题
- ICMP Flood防范
- http+flv+java,HTTP-FLV的两种方式
- arcgis js for JavaScript 4.X 移动轨迹动画
- 双色球的实现(基于Vuejs)
- 优盘里文件夹变成html,U盘里面的文件跟文件夹突然乱码了怎么办
- Excel表格转换为Word表格,并且保留Excel表格中公式不发生变化
- LeetCode-75. 颜色分类(荷兰国旗问题)