nDPI流量协议分析(应用软件识别)
nDPI识别的协议号大全
#ifndef _NDPI_H_
#define _NDPI_H_
typedef enum {
NDPI_PROTOCOL_FTP_CONTROL=1 , // 1 /* Tomasz Bujlow <tomasz@skatnet.dk> */
NDPI_PROTOCOL_MAIL_POP , // 2
NDPI_PROTOCOL_MAIL_SMTP , // 3
NDPI_PROTOCOL_MAIL_IMAP , // 4
NDPI_PROTOCOL_DNS , // 5
NDPI_PROTOCOL_IPP , // 6
NDPI_PROTOCOL_HTTP , // 7NDPI_PROTOCOL_MDNS , // 8
NDPI_PROTOCOL_NTP , // 9
NDPI_PROTOCOL_NETBIOS , // 10
NDPI_PROTOCOL_NFS , // 11
NDPI_PROTOCOL_SSDP , // 12
NDPI_PROTOCOL_BGP , // 13
NDPI_PROTOCOL_SNMP , // 14
NDPI_PROTOCOL_XDMCP , // 15
NDPI_PROTOCOL_SMB , // 16
NDPI_PROTOCOL_SYSLOG , // 17
NDPI_PROTOCOL_DHCP , // 18
NDPI_PROTOCOL_POSTGRES , // 19
NDPI_PROTOCOL_MYSQL , // 20
NDPI_PROTOCOL_TDS , // 21
NDPI_PROTOCOL_DIRECT_DOWNLOAD_LINK,// 22
NDPI_PROTOCOL_MAIL_POPS, // 23
NDPI_PROTOCOL_APPLEJUICE, // 24
NDPI_PROTOCOL_DIRECTCONNECT, // 25
NDPI_PROTOCOL_SOCRATES , // 26
NDPI_PROTOCOL_WINMX , // 27
NDPI_PROTOCOL_VMWARE , // 28
NDPI_PROTOCOL_MAIL_SMTPS, // 29
NDPI_PROTOCOL_FILETOPIA, // 30
NDPI_PROTOCOL_IMESH , // 31
NDPI_PROTOCOL_KONTIKI , // 32
NDPI_PROTOCOL_OPENFT , // 33
NDPI_PROTOCOL_FASTTRACK, // 34
NDPI_PROTOCOL_GNUTELLA , // 35
NDPI_PROTOCOL_EDONKEY , // 36 /* Tomasz Bujlow <tomasz@skatnet.dk> */
NDPI_PROTOCOL_BITTORRENT, // 37
NDPI_PROTOCOL_EPP, // 38NDPI_PROTOCOL_XBOX=47, // 47
NDPI_PROTOCOL_QQ , // 48
NDPI_PROTOCOL_MOVE , // 49
NDPI_PROTOCOL_RTSP , // 50
NDPI_PROTOCOL_MAIL_IMAPS, // 51
NDPI_PROTOCOL_ICECAST , // 52
NDPI_PROTOCOL_PPLIVE , // 53 /* Tomasz Bujlow <tomasz@skatnet.dk> */
NDPI_PROTOCOL_PPSTREAM, // 54
NDPI_PROTOCOL_ZATTOO , // 55
NDPI_PROTOCOL_SHOUTCAST, // 56
NDPI_PROTOCOL_SOPCAST , // 57
NDPI_PROTOCOL_TVANTS , // 58
NDPI_PROTOCOL_TVUPLAYER, // 59
NDPI_PROTOCOL_QQLIVE , // 61
NDPI_PROTOCOL_THUNDER , // 62
NDPI_PROTOCOL_SOULSEEK , // 63
NDPI_PROTOCOL_IRC , // 65
NDPI_PROTOCOL_AYIYA , // 66
NDPI_PROTOCOL_UNENCRYPED_JABBER, // 67
NDPI_PROTOCOL_MSN , // 68
NDPI_PROTOCOL_OSCAR , // 69
NDPI_PROTOCOL_YAHOO , // 70
NDPI_PROTOCOL_BATTLEFIELD , // 71
NDPI_PROTOCOL_QUAKE , // 72
NDPI_PROTOCOL_STEAM , // 74 /* Tomasz Bujlow <tomasz@skatnet.dk> */
NDPI_PROTOCOL_HALFLIFE2, // 75
NDPI_PROTOCOL_WORLDOFWARCRAFT, // 76
NDPI_PROTOCOL_TELNET , // 77
NDPI_PROTOCOL_STUN , // 78
NDPI_PROTOCOL_IP_IPSEC , // 79
NDPI_PROTOCOL_IP_GRE , // 80
NDPI_PROTOCOL_IP_ICMP , // 81
NDPI_PROTOCOL_IP_IGMP , // 82
NDPI_PROTOCOL_IP_EGP , // 83
NDPI_PROTOCOL_IP_SCTP , // 84
NDPI_PROTOCOL_IP_OSPF , // 85
NDPI_PROTOCOL_IP_IP_IN_IP , // 86NDPI_PROTOCOL_RTP , // 87
NDPI_PROTOCOL_RDP , // 88
NDPI_PROTOCOL_VNC , // 89
NDPI_PROTOCOL_PCANYWHERE, // 90
NDPI_PROTOCOL_SSL , // 91
NDPI_PROTOCOL_SSH , // 92
NDPI_PROTOCOL_USENET , // 93
NDPI_PROTOCOL_MGCP , // 94
NDPI_PROTOCOL_IAX , // 95
NDPI_PROTOCOL_TFTP , // 96
NDPI_PROTOCOL_AFP , // 97
NDPI_PROTOCOL_STEALTHNET, // 98
NDPI_PROTOCOL_AIMINI , // 99
NDPI_PROTOCOL_SIP , // 100
NDPI_PROTOCOL_TRUPHONE , // 101
NDPI_PROTOCOL_DHCPV6 , // 103
NDPI_PROTOCOL_ARMAGETRON, // 104
NDPI_PROTOCOL_CROSSFIRE, // 105
NDPI_PROTOCOL_DOFUS , // 106
NDPI_PROTOCOL_FIESTA , // 107
NDPI_PROTOCOL_FLORENSIA, // 108
NDPI_PROTOCOL_GUILDWARS, // 109
NDPI_PROTOCOL_KERBEROS , // 111
NDPI_PROTOCOL_LDAP , // 112
NDPI_PROTOCOL_MAPLESTORY, // 113
NDPI_PROTOCOL_MSSQL // 114
NDPI_PROTOCOL_PPTP , // 115
NDPI_PROTOCOL_WARCRAFT3, // 116
NDPI_PROTOCOL_WORLD_OF_KUNG_FU , // 117
NDPI_PROTOCOL_MEEBO , // 118
NDPI_PROTOCOL_DROPBOX , // 121
NDPI_PROTOCOL_SKYPE , // 125
NDPI_PROTOCOL_DCERPC , // 127
NDPI_PROTOCOL_NETFLOW , // 128
NDPI_PROTOCOL_SFLOW , // 129
NDPI_PROTOCOL_HTTP_CONNECT , // 130
NDPI_PROTOCOL_HTTP_PROXY , // 131NDPI_PROTOCOL_CITRIX , // 132
NDPI_PROTOCOL_SKYFILE_PREPAID , // 136
NDPI_PROTOCOL_SKYFILE_RUDICS , // 137
NDPI_PROTOCOL_SKYFILE_POSTPAID , // 138
NDPI_PROTOCOL_CITRIX_ONLINE , // 139
NDPI_PROTOCOL_WEBEX , // 141
NDPI_PROTOCOL_VIBER , // 144
NDPI_PROTOCOL_RADIUS , // 146
NDPI_SERVICE_WINDOWS_UPDATE , // 147
NDPI_PROTOCOL_TEAMVIEWER , // 148 /* xplico.org */
NDPI_PROTOCOL_LOTUS_NOTES , // 150
NDPI_PROTOCOL_SAP , // 151
NDPI_PROTOCOL_GTP , // 152
NDPI_PROTOCOL_UPNP , // 153
NDPI_PROTOCOL_LLMNR , // 154
NDPI_PROTOCOL_REMOTE_SCAN , // 155
NDPI_PROTOCOL_SPOTIFY , // 156
NDPI_PROTOCOL_H323 , // 158 /* Remy Mudingay <mudingay@ill.fr> */
NDPI_PROTOCOL_OPENVPN , // 159 /* Remy Mudingay <mudingay@ill.fr> */
NDPI_PROTOCOL_NOE , // 160 /* Remy Mudingay <mudingay@ill.fr> */
NDPI_PROTOCOL_CISCOVPN , // 161 /* Remy Mudingay <mudingay@ill.fr> */
NDPI_PROTOCOL_TEAMSPEAK , // 162 /* Remy Mudingay <mudingay@ill.fr> */
NDPI_PROTOCOL_TOR , // 163 /* Remy Mudingay <mudingay@ill.fr> */
NDPI_PROTOCOL_SKINNY , // 164 /* Remy Mudingay <mudingay@ill.fr> */
NDPI_PROTOCOL_RTCP , // 165 /* Remy Mudingay <mudingay@ill.fr> */
NDPI_PROTOCOL_RSYNC , // 166 /* Remy Mudingay <mudingay@ill.fr> */
NDPI_PROTOCOL_ORACLE , // 167 /* Remy Mudingay <mudingay@ill.fr> */
NDPI_PROTOCOL_CORBA , // 168 /* Remy Mudingay <mudingay@ill.fr> */
NDPI_PROTOCOL_UBUNTUONE , // 169 /* Remy Mudingay <mudingay@ill.fr> */
NDPI_PROTOCOL_WHOIS_DAS , // 170
NDPI_PROTOCOL_COLLECTD , // 171
NDPI_PROTOCOL_SOCKS5 , // 172 /* Tomasz Bujlow <tomasz@skatnet.dk> */
NDPI_PROTOCOL_SOCKS4 , // 173 /* Tomasz Bujlow <tomasz@skatnet.dk> */NDPI_PROTOCOL_RTMP , // 174 /* Tomasz Bujlow <tomasz@skatnet.dk> */
NDPI_PROTOCOL_FTP_DATA , // 175 /* Tomasz Bujlow <tomasz@skatnet.dk> */
NDPI_PROTOCOL_ZMQ , // 177
NDPI_PROTOCOL_MEGACO , // 181 /* Gianluca Costa <g.costa@xplico.org> */
NDPI_PROTOCOL_REDIS , // 182
NDPI_PROTOCOL_PANDO , // 183 /* Tomasz Bujlow <tomasz@skatnet.dk> */
NDPI_PROTOCOL_VHUA , // 184
NDPI_PROTOCOL_TELEGRAM , // 185 /* Gianluca Costa <g.costa@xplico.org> */
NDPI_PROTOCOL_QUIC , // 188 /* Andrea Buscarinu <andrea.buscarinu@gmail.com> - Michele Campus <michelecampus5@gmail.com> */
NDPI_PROTOCOL_WHATSAPP_VOICE , // 189
NDPI_PROTOCOL_EAQ, //
NDPI_PROTOCOL_STARCRAFT , // 213 /* Matteo Bracci <matteobracci1@gmail.com> */
NDPI_PROTOCOL_TEREDO , // 214NDPI_PROTOCOL_UNKNOWN
} L7ProtocolId;
#endif
1. 介绍
nDPI是一个从OpenDPI发展而来的DPI库,现在由ntop组织负责维护。
为了给你提供一个跨平台DPI的体验,nDPI除了支持Unix平台,还支持Windows(和Mac)。为了使nDPI更加适合应用于流量监控,我们将会持续进行优化,比如一旦发现存在对网络流量监控非必须的、却拖慢了DPI引擎的功能时,可以执行关闭。
不管使用了哪个端口,nDPI都可以探测到实际的应用层协议。这意味着既可以探测运行在非标准端口上的协议(e.g探测运行在非80端口上的http流量),又可以探测运行在一个标准端口上的其他协议(e.g探测运行在80端口上的Skype流量)。这是因为现在端口跟协议关联的概念已经被打破。
在过去的几个月里,我们已经为nDPI增加了以下多个功能:
一个名为ndpiReader的增强型demo
可以被编译进kernel成为一个模块,使其更加高效
从各方面提升了识别速度,目前nDPI在这方面已经远远超过了前代的OpenDPI
新增了大量的协议支持(目前为止已经支持超过180种协议),覆盖范围从商业类协议(如SAP和Citrix)到桌面协议(如Dropbox和Spotify)
可以定义基于端口(端口范围)的协议探测,丰富了传统的仅仅基于端口的探测手段
为了使nDPI支持探测加密连接,我们增加一个用于SSL的解码器(同时支持客户端和服务端),用以找出那些使用了加密证书的协议。这使我们可以识别那些以前无法探测到的协议,比如Citrix和AppleiCloud等
通过基于额外的一些字符串匹配方式,我们可以支持识别一些常见的应用子协议
2. 代码下载
在你搭建ntop和nProbe的过程中nDPI就会自动被下载。也可以作为一个独立的DPI库来使用,源代码可以通过gitclone https://github.com/ntop/nDPI.git下载。
或者:https://github.com/ntop/nDPI/archive/2.4.tar.gz
3. nDPI库安装
其他
安装方式跟平台以及发行版相关,这里列举了一些:Ubuntu/Debian #apt-get install build-essential#apt-get install git autoconf automake autogen libpcap-dev libtoolFedora/CentOS #yum groupinstall "Development tools"#yum install git autoconf automake autogen libpcap-devel libtoolMacOSX(using http://brew.sh) # brew install autoconf automake libtool gitFreeBSD #pkg install autoconf automake libtool gmake git
依赖环境:
libpcap
autotools
libtool
gawk
gcc
build-essential
安装:
cd nDPI
./autogen.sh
./configure
make
cd example
./ndpiReader --help
Version2.0版本在工程目录下执行make时,默认就编译了example目录下的ndpiReader
4. ndpiReader的命令行选项
以下列出了该demo程序的有效选项以及对应的简单解释
$./ndpiReader -hndpiReader-i <file|device> [-f <filter>][-s <duration>][-m<duration>][-p<protos>][-l <loops> [-q][-d][-h][-t][-v <level>][-n<threads>] [-w <file>] [-j <file>]Usage:-i<file.pcap|device> |指定一个需要被识别的pcap文件/文件列表,或者需要被嗅探的|设备接口/接口列表(文件列表或接口列表使用","作为分隔符)-f<BPF filter> |指定一条BPF规则的过滤字串-s<duration> |最大的嗅探时间(显然只在嗅探接口时生效)-m<duration> | pcap文件分段解析超时时间(显然只在解析pcap文件时生效)-p<file>.protos |指定一个自定义的协议识别配置文件(eg.protos.txt)-l<num loops> |指定循环执行嗅探的次数(仅用于测试)-n<num threads> |指定线程数量,缺省跟设备接口数量对应|如果传入的是pcap文件时固定使用单线程-j<file.json> |指定一个输出包内容的json文件-g<id:id...> |指定线程-CPU亲和关系映射表-d |禁止协议猜测功能-q |安静模式,意味着不打印信息-t |解析GTP隧道协议-r |打印 nDPI版本和git版本-w<path> |指定测试信息的输出文件-h | help信息-v<1|2|3> |按级别进一步打印包的详细信息,分为1、2、3级
5. 协议文件
通过基于字符串的匹配方式,nDPI可以支持识别应用层的子协议。这是因为存在很多像AppleiCloud/iMessage,WhatsApp等新出现的子协议,以及其他使用http(s)的协议,这些协议可以通过解码主机SSL证书或http头中的"Host"字段而被识别。因此我们决定嵌入一个有效字符串匹配库到nDPI中,这个库基于AC自动机算法来匹配成百上千的有效子串(i.e运行在商业硬件上的nDPI可以处理超过10Gbit的流量)
通过使用一个协议文件,你可以在运行时设置自定义的子协议,这个协议文件的格式如下:
# Subprotocols
# Format:
# host:"<value>",host:"<value>",.....@<subproto>
host:"googlesyndication.com"@Google
host:"venere.com"@Venere
host:"kataweb.it",host:"repubblica.it"@Repubblica
host:"ntop"@ntop
你还可以配置基于IP的子协议,格式如下:
# IP based Subprotocols
# Format:
# ip:<value>,ip:<value>,.....@<subproto>
ip:213.75.170.11@CustomProtocol
你还可以配置基于端口的子协议,格式如下:
# Format:
# <tcp|udp>:<port>,<tcp|udp>:<port>,.....@<proto>
tcp:81,tcp:8181@HTTP
udp:5061-5062@SIP
tcp:860,udp:860,tcp:3260,udp:3260@iSCSI
tcp:3000@ntop
只需要在运行ndpiReader时加上使用“-p”选项,就可以测试你自定义的配置协议了。当然你也可以通过在你的程序中调用nDPI的APIndpi_load_protocols_file()来测试你的配置。
6 .示例
这节中我们将展示一些demo程序ndpiReader的使用范例。
6.1现场捕获模式
下面这个例子展示了ndpiReader的现场捕获模式,其中“-i”选项用来指定需要进行嗅探的设备接口,“-s”选项指定了嗅探的时间。
$sudo ./ndpiReader -i eth0 -s 20-----------------------------------------------------------*NOTE: This is demo app to show *some* nDPI features.*In this demo we have implemented only some basic features*just to show you what you can do with the library. Feel*free to extend it and send us the patches for inclusion------------------------------------------------------------UsingnDPI (2.0.0-838-6607c33) [1 thread(s)]Capturinglive traffic from device eth0...Capturingtraffic up to 5 secondsRunningthread 0...nDPIMemory statistics:nDPIMemory (once): 93.13 KBFlowMemory (per flow): 1.25 KBActualMemory: 1.49 MBPeakMemory: 1.49 MBTrafficstatistics:Ethernetbytes: 80367 (includes ethernet CRC/IFC/trailer)Discardedbytes: 1200IPpackets: 236 of 256 packets totalIPbytes: 74703 (avg pkt size 291 bytes)Uniqueflows: 165TCPPackets: 0UDPPackets: 230VLANPackets: 4MPLSPackets: 0PPPoEPackets: 0FragmentedPackets: 0MaxPacket size: 328PacketLen < 64: 28PacketLen 64-128: 9PacketLen 128-256: 6PacketLen 256-1024: 193PacketLen 1024-1500: 0PacketLen > 1500: 0nDPIthroughput: 47.22 pps / 125.62 Kb/secAnalysisbegin: 01/Jan/1970 08:00:00Analysisend: 01/Jan/1970 08:00:00Trafficthroughput: 47.22 pps / 125.62 Kb/secTrafficduration: 4.998 secGuessedflow protos: 1Detectedprotocols:Unknown packets: 194 bytes: 69976 flows: 143NetBIOS packets: 19 bytes: 2116 flows: 8SSDP packets: 2 bytes: 416 flows: 2IGMP packets: 2 bytes: 120 flows: 2ICMPV6 packets: 4 bytes: 344 flows: 1DHCPV6 packets: 3 bytes: 455 flows: 3LLMNR packets: 10 bytes: 760 flows: 5Cloudflare packets: 2 bytes: 516 flows: 1Protocolstatistics:Acceptable 4727 bytesUnrated 69976 bytes
6.2文件捕获模式
最简单的创建一个pcap文件的方法是使用tcpdump命令,就像下面这个例子一项:
$sudo tcpdump -i eth0 -w /var/tmp/capture.pcap -vtcpdump:listening on eth0, link-type EN10MB (Ethernet), capture size 262144bytes^C248packets captured252packets received by filter0packets dropped by kernel
一旦pcap文件被创建,你就可以像下面这样运行ndpiReader:
$sudo ./ndpiReader -i /var/tmp/capture.pcap-----------------------------------------------------------*NOTE: This is demo app to show *some* nDPI features.*In this demo we have implemented only some basic features*just to show you what you can do with the library. Feel*free to extend it and send us the patches for inclusion------------------------------------------------------------UsingnDPI (2.0.0-838-6607c33) [1 thread(s)]Capturinglive traffic from device eth0...Capturingtraffic up to 5 secondsRunningthread 0...nDPIMemory statistics:nDPIMemory (once): 93.13 KBFlowMemory (per flow): 1.25 KBActualMemory: 1.49 MBPeakMemory: 1.49 MBTrafficstatistics:Ethernetbytes: 80650 (includes ethernet CRC/IFC/trailer)Discardedbytes: 1020IPpackets: 231 of 248 packets totalIPbytes: 75106 (avg pkt size 302 bytes)Uniqueflows: 164TCPPackets: 2UDPPackets: 227VLANPackets: 1MPLSPackets: 0PPPoEPackets: 0FragmentedPackets: 0MaxPacket size: 328PacketLen < 64: 19PacketLen 64-128: 6PacketLen 128-256: 13PacketLen 256-1024: 193PacketLen 1024-1500: 0PacketLen > 1500: 0nDPIthroughput: 155.03 K pps / 412.96 Mb/secAnalysisbegin: 14/Dec/2017 15:37:39Analysisend: 14/Dec/2017 15:37:44Trafficthroughput: 49.59 pps / 135.25 Kb/secTrafficduration: 4.659 secGuessedflow protos: 0Detectedprotocols:Unknown packets: 200 bytes: 71136 flows: 146MDNS packets: 6 bytes: 1197 flows: 3NetBIOS packets: 6 bytes: 552 flows: 3SSDP packets: 3 bytes: 624 flows: 2ICMPV6 packets: 1 bytes: 86 flows: 1DHCPV6 packets: 5 bytes: 761 flows: 5LLMNR packets: 10 bytes: 750 flows: 4Protocolstatistics:Acceptable 3970 bytesUnrated 71136 bytes
6.3协议文件
为了阐述清楚协议文件的作用,我们现在就来讲解如何识别ntop.org的流量。
可以像下面这样编辑protos.txt.
$echo 'host:"ntop.org"@nTop' > protos.txt
修改完协议文件之后,你就可以像下面这样运行ndpiReader:
$sudo ./ndpiReader -i eth0 -s 30 -p ./protos.txt
7.API nDPI
这节中高亮的就是nDPI的API。
这节中将ndpiReader作为一个基本范例来展示如何初始化nDPI库。首先需要一个编译完成的库以及一个合适的Makefile(i.e就像ndpiReader的Makefile那样)
为了在你的程序中使用nDPI的API,你除了要include自己的头文件外,还需要添加类似下面这一行:
#include<ndpi/ndpi_main.h>
库可以按照下面的顺序执行初始化:
[1].创建并初始化一个nDPI核心库探测模块
structndpi_detection_module_struct * module =ndpi_init_detection_module();
备注:本API格式在Version2.0版本中较之前版本差异很大。
这个探测模块中维护了所有支持的协议。
本API只是注册了所有支持的协议,但并未使能其中任何一个协议
[2].ndpiReader接下来通过一些宏使能了探测模块中的所有协议(显然你可以根据自己的需求来决定使能哪些协议)
NDPI_BITMASK_SET_ALL(all);
ndpi_set_protocol_detection_bitmask2(
structndpi_detection_module_struct *ndpi_struct,
constNDPI_PROTOCOL_BITMASK * dbm);
参数含义如下:
@ndpi_struct指向当前操作的探测模块
@dbm调用者实际通过该集合来控制实际需要应用的协议,只有该字段中被置1的对应协议,其协议分析器才真正允许被加载
备注:本API的作用就是使能一个已经初始化的nDPI核心库探测模块中的协议
[3].为了导入已经存在的协议文件,你还必须调用下面的API
ndpi_load_protocols_file(structndpi_detection_module_struct *ndpi_mod, char* path);
参数含义如下:
@ndpi_mod指向当前操作的探测模块
@path协议文件的路径
[4].一旦从你的pcap文件或设备接口上捕获到了数据流,就可以调用下面的API来进行分析
ndpi_protocolndpi_detection_process_packet(
structndpi_detection_module_struct *ndpi_struct,
structndpi_flow_struct *flow,
constunsigned char *packet,
constunsigned short packetlen,
constu_int64_t current_tick_l,
structndpi_id_struct *src,
structndpi_id_struct *dst)
参数含义如下:
@ndpi_struct指向传入包所属的探测模块
@ndpi_flow指向传入包所属的数据流
@packet指向传入包的IP头
@packetlen IP包的长度
@current_tick_l收到该IP包的时间(ms)
@src指向源用户状态机
@dst指向目的用户状态机
备注:本API是ndpi核心库处理收到包的入口,通过分析传入的IP包,完成数据流的识别,最后返回是别结果.
如果想了解更深入的信息,我们建议你阅读下面这些文件:
nDPI/example/pcapReader.c,
nDPI/src/include/ndpi_structs.h,
nDPI/src/include/ndpi_public_functions.h
nDPI/src/ndpi_main.c.
具体的协议解析器文件都被放在nDPI/src/protocols文件夹中。
nDPI流量协议分析(应用软件识别)相关推荐
- ndpi 流量协议分析
目录 1.nDPI介绍 2.nDPI库 3.示例 4.API nDPI 5.开发nDPI自定义协 1.nDPI介绍 nDPI是一个基于OpenDPI的DPI库,目前由ntop维护. 为了给您提供一个跨 ...
- 网络协议分析与仿真课程设计报告:网络流量分析与协议模拟
公众号:CS阿吉 网络协议分析与仿真课程设计报告 题 目:网络流量分析与协议模拟 专业名称: 网络工程 班 级: 学生姓名: 阿吉 学号(8位): 指导教 ...
- 【智能路由器】ndpi深度报文分析之协议分析器
[智能路由器]系列文章连接 http://blog.csdn.net/u012819339/article/category/5803489 本篇博客讲述ndpi已经实现的QQ协议分析器的实现 以及 ...
- 网络安全协议分析-wireshark流量监控(未完)
文章目录 TCP的六个标志 一.ARP欺骗 二.SYN半连接扫描. 三.FTP爆破 HTTP抓包修改 DNS与DHCP协议分析 DNS DHCP(饿死攻击) DDOS攻击 TCP的六个标志 TCP的六 ...
- MISC:流量包取证(pcap文件修复、协议分析、数据提取)
文章目录 1.流量包修复 2.协议分析 2.1 wireshark基本操作 2.2 一些例题(各种协议) 3.数据提取 1.流量包修复 这个方向的考点较少 当我们用 wireshark 打开流量包时, ...
- TLS握手协议分析与理解——某HTTPS请求流量包分析
https://xz.aliyun.com/t/1039 HTTPS简介 HTTPS,是一种网络安全传输协议,在HTTP的基础上利用SSL/TLS来对数据包进行加密,以提供对网络服务器的身份认证,保护 ...
- 【智能路由器】ndpi深度报文分析源码框架
[智能路由器]系列文章连接 http://blog.csdn.net/u012819339/article/category/5803489 某些需求可能会要求路由能精确的分析出流经路由的流量是属于什 ...
- gzip格式分析与识别
" 介绍gzip格式,识别gzip压缩的数据流量." 在协议分析过程中,经常会发现gzip压缩的数据,例如在HTTP协议中,在HTTP头中会标示,内容编码为gzip.DEFLATE ...
- 五款常用协议分析处理工具推荐
工欲善其事,必先利其器,一款好的工具,能取到事半功倍的效果. 进行协议分析,好的辅助工具必不可少,本文推荐五款最常用且易用的协议分析工具给大家,包括两款综合抓包及分析工具,一款协议重放工具,一款pca ...
最新文章
- MySQL图形处理软件Navicat字体配置(乱码解决)
- 编写 Spring MVC 控制器的 14 个技巧
- 纠结pytorch, tensorflow, keras 一个月之后,我自己创造了一个神经网络框架
- 什么是神经网络在object detection的应用?cascade classifier,卷积神经网络,迁移学习
- python 占位符_5分钟让你用Python作出最精美的Powerpoint
- 04 | 深入浅出索引(上)
- ue4sky时间_UE4 SkyLight RealTimeCapture浅析
- oracle表空间如何压缩,Oracle里表空间的压缩
- STL工作笔记-map中关于erase返回值的操作
- 资源下载| 深度学习Pytoch1.0如何玩?这一门含900页ppt和代码实例的深度学习课程带你飞
- 使用Css隐藏超出容器宽度的文字,溢出部分用“...”表示
- 学好python工资一般多少-参加Python培训就业薪资是多少?老男孩学Python好吗?
- 红旗liuxe5.0下vmware tools安装记录
- 《自卑与超越》读书笔记优秀范文3200字
- httpclient使用代理ip
- 详细解释JavaScript中三元表达式
- 再谈10000小时,三板斧破四困境
- B站到处投资,股价暴跌两位数
- Javaweb——监听器
- elasticsearch 性能测试
热门文章
- 复现Cell附图 |类器官的单细胞分析
- python购物车典例_Python实现的购物车功能示例
- 信息学奥赛一本通 提高篇 第六部分 数学基础 第1章 快速幂
- 普通背包问题-枚举算法(《算法竞赛宝典》 第二部 基础算法艺术)
- lda数学八卦_【技术博客】文本挖掘之LDA主题模型
- Spring Boot笔记-解决前后端分离在开发时的跨域问题
- Wireshark文档阅读笔记-User Datagram Protocol(UDP)
- MySQL工作笔记-建表时为Float型数据确定精度,查询时精度显示,多列之和查询
- 系统架构工作笔记-数据展示进程与读取数据进程分离,实现低耦合(展示软件可适用任意厂家数据库)
- 2.4一元多项式的表示及相加