原文发表于:2010-09-25

转载至cu于:2012-07-21

前两天因为看局域网安全的视频中介绍dsniff,也想自己安装下来看看效果。简单的使用没什么难的(高级使用就需要研究文档了),但是安装过程倒是折腾了好久,所以想记录下来,以备不时只需。

一. Dsniff简介

Dsniff是一个基于unix系统网络嗅探工具,开发者Dub Song于2000年12月发布v2.3版本,目前最新版本是2001年3月发布的v2.4b1的beta版。

下载地址:http://www.monkey.org/~dugsong/dsniff

Dsniff是一个工具集,主要分为四类:

  1. 纯粹被动地进行网络活动监视的工具,包括:dsniff、filesnarf、mailsnarf 、msgsnarf、urlsnarf、webspy;
  2. 针对SSH和SSL的MITM(Man-In-The-Middle)"攻击"工具,包括sshmitm和webmitm;
  3. 发起主动欺骗的工具,包括:arpspoof、dnsspoof、macof;
  4. 其它工具,包括tcpkill、tcpnice

 二. Dsniff 安装

上面已经介绍过了,dsniff是一个比较老的嗅探工具。当我在安装过程中对它依赖的第三方软件包使用较新的版本时,编译安装过程中始终有这样或者那样的问题。没办法,强大的google再此上场,看到有文章推荐的第三方软件包版本,重新试试,安装过程竟是一点问题没有。

这是参考的文章链接:http://gnu.shslzx.cn/?m=201004

以下是依赖的第三方软件包及版本,下载链接:

openssl-0.9.7i.tar.gz http://down1.chinaunix.net/distfiles/openssl-0.9.7i.tar.gz

libnids-1.18.tar.gz http://down1.chinaunix.net/distfiles/libnids-1.18.tar.gz

libpcap-0.7.2.tar.gz http://down1.chinaunix.net/distfiles/libpcap-0.7.2.tar.gz

libnet-1.0.2a.tar.gz http://down1.chinaunix.net/distfiles/libnet-1.0.2a.tar.gz

Berkeleydb-4.7.25.tar.gz http://download.oracle.com/berkeley-db/db-4.7.25.tar.gz

有了上面这些版本的第三方软件包的支持,后面的无非就是解压,编译,安装了。

需要注意的是编译Berkeleydb时,解压进入相应目录后:

cd build_unix
../dist/configure
make;make install 

三. Dsniff 工具集

  1. dsniff: 一个密码侦测工具,他能够自动分析端口上收到的某些协议的数据包,并获取相应的密码。dnisff支持的协议有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 and Microsoft SQL;
  2. filesnart: 嗅探网络文件系统(NFS)的流量,并选定某个文件,转储到本地当前工作目录;
  3. mailsnarf: 可以嗅探SMTP和POP流量,并以Berkeley邮件格式输出e-mail消息;
  4. msgsnarf:可以嗅探聊天软件的聊天内容,包括AOL,ICQ 2000, IRC, MSN Messenger, 或Yahoo  Messenger;
  5. urlsnarf: 可以嗅探HTTP请求报文的内容,并以CLF (Common Log Format)通用日志格式输出;
  6. webspy: 指定一个要嗅探的主机,如果指定主机发送HTTP请求,打开网页,webspy也会通过netscape浏览器在本地打开一个相同的网页;
  7. sshmitm: 是Dsniff自带的一个具有威胁的工具之一。首先通过dnsspoof伪造实际机器主机名将攻击目标主机的SSH连接转到本地,那么sshmitm可以截获来自主机的密钥,并获得被劫持连接中的所有信息解码,然后重新转发SSH流量到SSH服务器;
  8. webmitm:与sshmitm类似,也需要dnsspoof的"配合",不同的是,webmitm"劫持"的是HTTP和HTTPS会话过程,捕获SSL的加密通信;
  9. arpspoof:启用arp欺骗,将自己网卡的IP地址伪装成指定IP地址的MAC;
  10. dnsspoof: 启用DNS欺骗,如果dnsspoof嗅探到局域网内有DNS请求数据包,它会分析其内容,并用伪造的DNS响应包来回复请求者。如果是 请求解析某个域名,dnsspoof会让该域名重新指向另一个IP地址(黑客所控制的主机),如果是反向IP指针解析,dnsspoof也会返回一个伪造的域名;
  11. macof:用来进行MAC flooding,可以用来使交换机的MAC表溢出,对于以后收到的数据包以广播方式发送。注意:在进行MAC泛洪之前就存在于交换机MAC表中的条目不会被覆盖,只能等到这些条目自然老化;
  12. tcpkill: 能够切断指定的TCP会话连接,主要是基于TCP的三次握手过程;
  13. tcpnice: 能够通过在添加活动的流量,降低指定的LAN上的TCP连接的速度.

 四. Dsniff 简单演示

  • dsniff: 在虚拟机开启密码嗅探,获取的ftp登陆账号和密码。需要注意的是dsniff获取密码是在释放会话之后。
[root@dsniff ~]# dsniff

dsniff: listening on eth0
-----------------
09/23/10 17:20:47 tcp 192.168.1.110.2048 -> 192.168.1.104.21 (ftp)
USER root
PASS ftptest
  • macof: 主动攻击,制造大量mac,将交换机强制变成hub(当然这也得看发动攻击的主机的性能,这里是虚拟机对cisco 2950 的macof,从效果上来看,虽然将交换机的cam表打满了,性能上也下降了许多,但交换机并没有完全变成hub),以方便后续的抓包。
switch#show mac-address-table count

Mac Entries for Vlan 1:
---------------------------
Dynamic Address Count : 8190
Static Address Count : 0
Total Mac Addresses : 8190 Total Mac Address Space Available: 0 

Dsniff简介的更多相关文章

  1. ASP.NET Core 1.1 简介

    ASP.NET Core 1.1 于2016年11月16日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强.这个版本包含了多个新的中间件组件.针对Windows的WebListener服 ...

  2. MVVM模式和在WPF中的实现(一)MVVM模式简介

    MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...

  3. Cassandra简介

    在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了一种非常流行的图形数据库Neo4J的使用方法.而在本文中,我们将对另外一种类型的NoSQL数据库——Cassandra进行简单地介 ...

  4. REST简介

    一说到REST,我想大家的第一反应就是“啊,就是那种前后台通信方式.”但是在要求详细讲述它所提出的各个约束,以及如何开始搭建REST服务时,却很少有人能够清晰地说出它到底是什么,需要遵守什么样的准则. ...

  5. Microservice架构模式简介

    在2014年,Sam Newman,Martin Fowler在ThoughtWorks的一位同事,出版了一本新书<Building Microservices>.该书描述了如何按照Mic ...

  6. const,static,extern 简介

    const,static,extern 简介 一.const与宏的区别: const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量. 执行时刻:宏是预编 ...

  7. HTTPS简介

    一.简单总结 1.HTTPS概念总结 HTTPS 就是对HTTP进行了TLS或SSL加密. 应用层的HTTP协议通过传输层的TCP协议来传输,HTTPS 在 HTTP和 TCP中间加了一层TLS/SS ...

  8. 【Machine Learning】机器学习及其基础概念简介

    机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...

  9. Cesium简介以及离线部署运行

    Cesium简介 cesium是国外一个基于JavaScript编写的使用WebGL的地图引擎,一款开源3DGIS的js库.cesium支持3D,2D,2.5D形式的地图展示,可以自行绘制图形,高亮区 ...

随机推荐

  1. objc单例的两种安全实现方案

    所有转出博客园,请您注明出处:http://www.cnblogs.com/xiaobajiu/p/4122034.html objc的单例的两种安全实现方案 首先应该知道单例的实现有两大类,一个是懒 ...

  2. Java编写画图板程序细节-保存已画图形

    没有Java编写画图板程序细节-保存已画图形   一.为何我们要保存画图板上已画图形呢? 有很多人会问,为什么我们一定要保存画图板上已经画好了的图形呢?原因很简单.当我们在画图板上画完自己想画的图形后 ...

  3. 歌词解析&class

    class song_song: def __init__(self,lrc_file): # 定义两个字典一个列表备用 self.song_file = lrc_file self.song_lrc ...

  4. MongoDB安装及启动

    本机环境系统:Debian 9桌面系统:KDE Plasma ## 官网下载自己系统最新稳定版 https://www.mongodb.com/download-center#community 选择 ...

  5. PHpStorm + phpstudy 断点调试配置

    步骤: phpstudy     其他菜单 ->打开配置文件 ->打开 php.ini ->找到 XDebug ->XDebug修改成下面文字 [XDebug] :红色  (1 ...

  6. 树莓3B+_root密码开启

    开启root用户的方法:1.设置密码:sudo passwd2.sudo passwd --unlock root3.root用户登录:su

  7. FIR滤波器实例

    Fs = 1000; % 采样频率 N = 1024; % 采样点数 ,即实际中一次FFT变换所使用的点数n = 0:N-1; % 采样序列,为plot绘图用的序列,其对应点表示的真实频率为 f = ...

  8. 20155305 2016-2017-2 《Java程序设计》实验一 Java开发环境的熟悉(macOS + IDEA)

    20155305 2016-2017-2 <Java程序设计>实验一 Java开发环境的熟悉(macOS + IDEA) 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用E ...

  9. 20155313 2016-2017-2《Java程序设计》课程总结

    20155313 2016-2017-2<Java程序设计>课程总结 目录 一.每周作业链接汇总 二.实验报告链接汇总 三.代码托管链接 四.课堂项目实践 五.课程收获与不足 六.问卷调查 ...

  10. # 第二周c实践所遇见的问题

    第二周c实践所遇见的问题 地址符 在编程练习中时常忘记写入地址符,造成过运行错误,运行结果错误的惨痛教训,一个小小的错误耗费了很长的时间来寻找错误之处,养成写代码的一些好习惯势在必行.牢记scanf( ...