linux tcpdump, etheral, wireshark, WebScarab, 如何备份Firefox里的SSL证书

1, Ethereal:  tcpdump  的图形界面工具
Wireshark: tcpdump  的图形界面工具; ethereal的升级版;

 

Use Wireshark to Decrypt HTTPS:    http://www.etherlook.com/howto/use-wireshark-to-decrypt-https/

如何用Wireshark(Ethereal)查看HTTPS(SSL)消息里的加密内容:

http://blog.csdn.net/jasonhwang/article/details/2350723

 

 

http://blog.csdn.net/jasonhwang/article/details/2350723

关于wireshark分析https数据 数据 wireshark 我最近要分析一个https网站的数据,但是用wireshark抓包后,发现所有的数据都是加密的,查了一下文档,说需要在wireshark中的协议中配置服务器的ip,端口,协议以及服务器的key_file

前面三个倒是都好办,可以直接填上,可是服务器的key文件该怎么拿到呢?我用firefox打开网站的时候,可以选择将证书导出,我导出成server.pem文件,然后在wireshark中设置之后,依然不能分析ssl的数据,请问是不是我导出服务器证书的方式不对?而是应该用其他方法生成证书文件?

汗。。似乎用这个方法成了。
openssl rsa –in ./serverkey.pem –out ./open-private-key.pem






 

 

2,  WebScarab - 基于代理的Web安全测试软件            

相当于一个代理服务器, 双方请求应答,经过此代理服务器,代理服务器就能抓到双方的应答消息(包括https的消息)。

download:

http://sourceforge.net/projects/owasp/files/WebScarab/20070504-1631/webscarab-selfcontained-20070504-1631.jar/download

http://sourceforge.net/projects/owasp/files/WebScarab/20070504-1631/

Then install them likewise:

Linux: java -jar ./webscarab-selfcontained-[numbers].jar

WebScarab is a framework for analysing applications that communicate using the HTTP and HTTPS protocols. 

It is written in Java, and is thus portable to many platforms. WebScarab has several modes of operation, implemented by a number of plugins. In its most common usage, WebScarab operates as an intercepting proxy, allowing the operator to review and modify requests created by the browser before they are sent to the server, and to review and modify responses returned from the server before they are received by the browser. 

WebScarab is able tointercept both HTTP and HTTPS communication. The operator can also review the conversations (requests and responses) that have passed through WebScarab.


 

 

 

 

3,  tcpdump 

 

Tcpdump命令的使用与示例——linux下的网络分析

例子:tcpdump -i eth0 -w tcpdumplog host 192.168.5.33 -s 0
kreatv-tools-tcpdump

 

3.1, 网络数据采集分析工具TcpDump的简介

顾名思义,TcpDump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。tcpdump就是一种免费的网络分析工具,尤其其提供了源代码,公开了接口,因此具备很强的可扩展性,对于网络维护和入侵者都是非常有用的工具。tcpdump存在于基本的FreeBSD系统中,由于它需要将网络界面设置为混杂模式,普通用户不能正常执行,但具备root权限的用户可以直接执行它来获取网络上的信息。因此系统中存在网络分析工具主要不是对本机安全的威胁,而是对网络上的其他计算机的安全存在威胁。

我们用尽量简单的话来定义tcpdump,就是:dump the traffice on a network.,根据使用者的定义对网络上的数据包进行截获的包分析工具。作为互联网上经典的的系统管理员必备工具,tcpdump以其强大的功能,灵活的截取策略,成为每个高级的系统管理员分析网络,排查问题等所必备的东西之一。tcpdump提供了源代码,公开了接口,因此具备很强的可扩展性,对于网络维护和入侵者都是非常有用的工具。

3.2, 网络数据采集分析工具TcpDump的安装
在linux下tcpdump的安装十分简单,一般由两种安装方式。一种是以rpm包的形式来进行安装。另外一种是以源程序的形式安装。
rpm包的形式安装:这种形式的安装是最简单的安装方法,rpm包是将软件编译后打包成二进制的格式,通过rpm命令可以直接安装,不需要修改任何东西。以超级用户登录,使用命令如下:

#rpm -ivh tcpdump-3_4a5.rpm

 

3.3 网络数据采集分析工具TcpDump的使用
 普通情况下,直接启动tcpdump将监视第一个网络界面上所有流过的数据包。
# tcpdump 
tcpdump: listening on fxp0
11:58:47.873028 202.102.245.40.netbios-ns > 202.102.245.127.netbios-ns: udp 50
11:58:47.974331 0:10:7b:8:3a:56 > 1:80:c2:0:0:0 802.1d ui/C len=43
                         0000 0000 0080 0000 1007 cf08 0900 0000
                         0e80 0000 902b 4695 0980 8701 0014 0002
                         000f 0000 902b 4695 0008 00
11:58:48.373134 0:0:e8:5b:6d:85 > Broadcast sap e0 ui/C len=97
                         ffff 0060 0004 ffff ffff ffff ffff ffff
                         0452 ffff ffff 0000 e85b 6d85 4008 0002
                         0640 4d41 5354 4552 5f57 4542 0000 0000
                         0000 00^C
    tcpdump支持相当多的不同参数,
    如使用-i参数指定tcpdump监听的网络界面,这在计算机具有多个网络界面时非常有用,
    使用-c参数指定要监听的数据包数量,使用-w参数指定将监听到的数据包写入文件中保存,等等。
    使用-w参数指定将监听到的数据包写入文件中保存

 

      然而更复杂的tcpdump参数是用于过滤目的,这是因为网络中流量很大,如果不加分辨将所有的数据包都截留下来,数据量太大,反而不容易发现需要的数据包。使用这些参数定义的过滤规则可以截留特定的数据包,以缩小目标,才能更好的分析网络中存在的问题。tcpdump使用参数指定要监视数据包的类型、地址、端口等,根据具体的网络问题,充分利用这些过滤规则就能达到迅速定位故障的目的。请使用man tcpdump查看这些过滤规则的具体用法。

 

       从上面tcpdump的输出可以看出,tcpdump对截获的数据并没有进行彻底解码,数据包内的大部分内容是使用十六进制的形式直接打印输出的。显然这不利于分析网络故障,通常的解决办法是先使用带-w参数的tcpdump 截获数据并保存到文件中,然后再使用其他程序进行解码分析。当然也应该定义过滤规则,以避免捕获的数据包填满整个硬盘。FreeBSD提供的一个有效的解码程序为tcpshow,它可以通过Packages Collection来安装。
# pkg_add /cdrom/packages/security/tcpshow*
# tcpdump -c 3 -w tcpdump.out
tcpdump: listening on fxp0
# tcpshow < tcpdump.out

  

3.4, tcpdump采用命令行方式,它的命令格式为:
      tcpdump [ -adeflnNOpqStvx ] [ -c 数量 ] [ -F 文件名 ]
          [ -i 网络接口 ] [ -r 文件名] [ -s snaplen ]
          [ -T 类型 ] [ -w 文件名 ] [表达式 ]

(1). tcpdump的选项介绍
   -a    将网络地址和广播地址转变成名字;
   -d    将匹配信息包的代码以人们能够理解的汇编格式给出;
   -dd    将匹配信息包的代码以c语言程序段的格式给出;
   -ddd   将匹配信息包的代码以十进制的形式给出;
   -e    在输出行打印出数据链路层的头部信息;
   -f    将外部的Internet地址以数字的形式打印出来;
   -l    使标准输出变为缓冲行形式;
   -n    不把网络地址转换成名字;
   -t    在输出的每一行不打印时间戳;
   -v    输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息;
   -vv    输出详细的报文信息;
   -c    在收到指定的包的数目后,tcpdump就会停止;
   -F    从指定的文件中读取表达式,忽略其它的表达式;
   -i    指定监听的网络接口;
   -r    从指定的文件中读取包(这些包一般通过-w选项产生);
   -w    直接将包写入文件中,并不分析和打印出来;
   -T    将监听到的包直接解释为指定的类型的报文,常见的类型有rpc (远程过程调用)和snmp(简单网络管理协议;)

2). tcpdump的表达式介绍
    表达式是一个正则表达式,tcpdump利用它作为过滤报文的条件,如果一个报文满足表达式的条件,则这个报文将会被捕获。如果没有给出任何条件,则网络上所有的信息包将会被截获。在表达式中一般如下几种类型的关键字。
    第一种是关于类型的关键字,主要包括host,net,port, 例如 host 210.27.48.2,指明 210.27.48.2是一台主机,net 202.0.0.0 指明 202.0.0.0是一个网络地址,port 23 指明端口号是23。如果没有指定类型,缺省的类型是host.
    第二种是确定传输方向的关键字,主要包括src , dst ,dst or src, dst and src ,这些关键字指明了传输的方向。举例说明,src 210.27.48.2 ,指明ip包中源地址是210.27.48.2 , dst net 202.0.0.0 指明目的网络地址是202.0.0.0 。如果没有指明方向关键字,则缺省是src or dst关键字。
    第三种是协议的关键字,主要包括fddi,ip,arp,rarp,tcp,udp等类型。Fddi指明是在FDDI(分布式光纤数据接口网络)上的特定的网络协议,实际上它是"ether"的别名,fddi和ether具有类似的源地址和目的地址,所以可以将fddi协议包当作ether的包进行处理和分析。其他的几个关键字就是指明了监听的包的协议内容。如果没有指定任何协议,则tcpdump将会监听所有协议的信息包。

    除了这三种类型的关键字之外,其他重要的关键字如下:gateway, broadcast,less,greater,还有三种逻辑运算,取非运算是 'not ' '! ', 与运算是'and','&&';或运算 是'or' ,'││';这些关键字可以组合起来构成强大的组合条件来满足人们的需要,下面举几个例子来说明。
    A想要截获所有210.27.48.1 的主机收到的和发出的所有的数据包:
      #tcpdump host 210.27.48.1 
    B想要截获主机210.27.48.1 和主机210.27.48.2 或210.27.48.3的通信,使用命令:(在命令行中适用   括号时,一定要
      #tcpdump host 210.27.48.1 and \ (210.27.48.2 or 210.27.48.3 \) 
    C如果想要获取主机210.27.48.1除了和主机210.27.48.2之外所有主机通信的ip包,使用命令:
      #tcpdump ip host 210.27.48.1 and ! 210.27.48.2
    D如果想要获取主机210.27.48.1接收或发出的telnet包,使用如下命令:
      #tcpdump tcp port 23 host 210.27.48.1 

 

 

 

 

 

4,  如何备份Firefox里的SSL证书?

4.) How do I backup my client certificates?Firefox: Select "Preferences" -> "Advanced" -> "Encryption" -> "View Certificates", choose the "Your Certificates" tab and locate your client certificate from the list. The certificate will be listed under StartCom. Select the certificate and click on "Backup", choose a name for this backup file, provide a password and save it at a known location. Now you should either burn this file to a CD ROM or save it on a USB stick or smart card. Thereafter delete this file from your computer.

Internet Explorer: Select from "Tools" -> "Internet Options" -> "Content" -> "Certificates" -> "Personal" and locate your client certificate from the list. Click on "Export" -> "Next" -> "Yes, export the private key" -> "Next" -> "Next". Choose a password for your file and click "Next", choose a name for this backup file and save it at a known location. Now you should either burn this file to a CD ROM or save it on a USB stick or smart card. Thereafter delete this file from your computer. 

Opera: Select from "Settings" -> "Preferences" -> "Advanced" -> "Security" -> "Manage Certificates" -> "Personal". Click on "Export" and choose a name for this backup file. Make sure to choose the .p12 for PKCS12 extension, not the default .usr.

Safari (on OS X): Select the private key and the certificate together in your keychain and export as a PKCS12 file. 

Google Chrome: Click on the wrench icon in the upper right ("Customize and control Google Chrome"). Select "Options" from the menu. Click on "Under the Hood" and then in the HTTPS/SSL section, click on the "Manage certificates..." button. Select the certificate(s) you want to export, click on the "Export..." button and follow the prompts from the Expert Certificate Wizard that pops up.

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值