Dsniff简介
原文发表于: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是一个工具集,主要分为四类:
- 纯粹被动地进行网络活动监视的工具,包括:dsniff、filesnarf、mailsnarf 、msgsnarf、urlsnarf、webspy;
- 针对SSH和SSL的MITM(Man-In-The-Middle)"攻击"工具,包括sshmitm和webmitm;
- 发起主动欺骗的工具,包括:arpspoof、dnsspoof、macof;
- 其它工具,包括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 工具集
- 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;
- filesnart: 嗅探网络文件系统(NFS)的流量,并选定某个文件,转储到本地当前工作目录;
- mailsnarf: 可以嗅探SMTP和POP流量,并以Berkeley邮件格式输出e-mail消息;
- msgsnarf:可以嗅探聊天软件的聊天内容,包括AOL,ICQ 2000, IRC, MSN Messenger, 或Yahoo Messenger;
- urlsnarf: 可以嗅探HTTP请求报文的内容,并以CLF (Common Log Format)通用日志格式输出;
- webspy: 指定一个要嗅探的主机,如果指定主机发送HTTP请求,打开网页,webspy也会通过netscape浏览器在本地打开一个相同的网页;
- sshmitm: 是Dsniff自带的一个具有威胁的工具之一。首先通过dnsspoof伪造实际机器主机名将攻击目标主机的SSH连接转到本地,那么sshmitm可以截获来自主机的密钥,并获得被劫持连接中的所有信息解码,然后重新转发SSH流量到SSH服务器;
- webmitm:与sshmitm类似,也需要dnsspoof的"配合",不同的是,webmitm"劫持"的是HTTP和HTTPS会话过程,捕获SSL的加密通信;
- arpspoof:启用arp欺骗,将自己网卡的IP地址伪装成指定IP地址的MAC;
- dnsspoof: 启用DNS欺骗,如果dnsspoof嗅探到局域网内有DNS请求数据包,它会分析其内容,并用伪造的DNS响应包来回复请求者。如果是 请求解析某个域名,dnsspoof会让该域名重新指向另一个IP地址(黑客所控制的主机),如果是反向IP指针解析,dnsspoof也会返回一个伪造的域名;
- macof:用来进行MAC flooding,可以用来使交换机的MAC表溢出,对于以后收到的数据包以广播方式发送。注意:在进行MAC泛洪之前就存在于交换机MAC表中的条目不会被覆盖,只能等到这些条目自然老化;
- tcpkill: 能够切断指定的TCP会话连接,主要是基于TCP的三次握手过程;
- 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简介的更多相关文章
- ASP.NET Core 1.1 简介
ASP.NET Core 1.1 于2016年11月16日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强.这个版本包含了多个新的中间件组件.针对Windows的WebListener服 ...
- MVVM模式和在WPF中的实现(一)MVVM模式简介
MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...
- Cassandra简介
在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了一种非常流行的图形数据库Neo4J的使用方法.而在本文中,我们将对另外一种类型的NoSQL数据库——Cassandra进行简单地介 ...
- REST简介
一说到REST,我想大家的第一反应就是“啊,就是那种前后台通信方式.”但是在要求详细讲述它所提出的各个约束,以及如何开始搭建REST服务时,却很少有人能够清晰地说出它到底是什么,需要遵守什么样的准则. ...
- Microservice架构模式简介
在2014年,Sam Newman,Martin Fowler在ThoughtWorks的一位同事,出版了一本新书<Building Microservices>.该书描述了如何按照Mic ...
- const,static,extern 简介
const,static,extern 简介 一.const与宏的区别: const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量. 执行时刻:宏是预编 ...
- HTTPS简介
一.简单总结 1.HTTPS概念总结 HTTPS 就是对HTTP进行了TLS或SSL加密. 应用层的HTTP协议通过传输层的TCP协议来传输,HTTPS 在 HTTP和 TCP中间加了一层TLS/SS ...
- 【Machine Learning】机器学习及其基础概念简介
机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...
- Cesium简介以及离线部署运行
Cesium简介 cesium是国外一个基于JavaScript编写的使用WebGL的地图引擎,一款开源3DGIS的js库.cesium支持3D,2D,2.5D形式的地图展示,可以自行绘制图形,高亮区 ...
随机推荐
- Qt图标自定义
https://mp.csdn.net/postedit/83449333 参考连接
- webpack使用打包的一些心得
webpack打包工具: module.exports:输出require:引入 require('!style-loader!css-loader!./***.css'):静态样式引入 npm in ...
- JS变量、作用域、内存
写到这个题目<JS变量.作用域,内存>,我就不由自主想起了黄金三嫖客.可能是名字有点像,嗯,一定是这样子的! JS接触下来,应该是要比Java简单不少的,所以,要学好啊.立个flag半年后 ...
- Hammer.js 实现移动端元素的拖拽库
1. Pan事件:在指定的dom区域内,一个手指放下并移动事件,即触屏中的拖动事件.这个事件在屏触开发中比较常用,如:左拖动.右拖动等,如手要上使用QQ时向右滑动出现功能菜单的效果.该事件还可以分别对 ...
- Windows Redis 取消保护模式C#进行访问
运行redis服务程序和客户端程序设置即可. config set protected-mode “no”
- 学习html的第一天
HTML 第一章: webde 运行环境: 1. 什么是HTML HTML 是用来描述网页的一种语言. HTML 指的是超文本标记语言:HyperText Markup Languge 超文本 就是网 ...
- Redis学习笔记(二)
解读Retwis官网例子 Redis需要考虑需要哪些keys以及对应的value使用合适的数据类型进行存储.在retwis例子中,我们需要users,user的粉丝列表, user的关注用户列表等等. ...
- 运行TensorFlow报错,“This program requires version 3.6.1 of the Protocol Buffer runtime library, but the installed version is 3.0.0.”
报错信息: [libprotobuf FATAL google/protobuf/src/google/protobuf/stubs/common.cc:67] This program requir ...
- 接口测试jemeter使用
使用jemeter5时要先添加环境变量,需要有JDK1.8及以上版本支持.这里主要对接口测试做一些说明. 以上就是常见的设置问题.在window上我们通常是不需要改动配置文件的,如果要在生产上执行测试 ...
- Rails中重写Active Record字段属性
系统重构或升级时偶尔会碰到需要重写某个字段的情况,例如: 1. 读取user的name字段时,实际返回name_new字段 class User < ActiveRecord::Base def ...