基于DPI(深度报文解析)的应用识别2------实际分析
发布时间:2020-12-14 04:37:14 所属栏目:百科 来源:网络整理
导读:新浪微博的分析 早上刚刚起床先刷微博,打算就分析一下新浪微博。 登陆之后抓取发布微博的数据包,进行分析。 1.抓包的要点: 1.关闭其他网络应用,保证本机网络流量的干净,便于分析。 2.先开启wireshark,后发布微博,微博发布成功立即停止,其他的应用类
新浪微博的分析早上刚刚起床先刷微博,打算就分析一下新浪微博。登陆之后抓取发布微博的数据包,进行分析。
1.抓包的要点:1.关闭其他网络应用,保证本机网络流量的干净,便于分析。 2.先开启wireshark,后发布微博,微博发布成功立即停止,其他的应用类似。 3.查看conversion list ,太小的包没必要检查。 4.最关键的一点:一定抓取到3次握手,切记切记。 5.大部分应用都是基于TCP的,所以TCP优先分析,其次是UDP。
2.实际分析
1.筛选出TCP的回话列表,如图
我本地的流量比较干净,而且这次的分析比较明显,低于500Byte的数据包基本不含什么有用的信息,所以本次分析直接选择大小为6563的数据包就可以,实际情况可没这么少,应该会有很多干扰的回话,需要去仔细分析。
2.以下对65563的数据包进行分析:
确定这次回话有三次握手,图红框内的部分,这样就能准确的在建立链接的时候就能识别应用。
3.PC的web 微博基于http的,接下来就是分析HTTP报文内容,写出正确的正则表达式,以准确识别应用。
实际发得微博内容:
1.实际发的微博内容是n个a,在解析出的报文内容中text=aaaaaaaaaaaaaaaaaaaaaaaaaaa。明显是我们发的微博内容。这样就可以更进一步确定这是我们发的微博的数据包。
2.Host对应的是weibo.com
4.写出正确的正则表达式,以准确识别应用。
1.确保一个公司的相同产品直接不能产生误识别,或者正则表达式之间没有包含关系。举个例子:你想识别微博,然后你只写一个weibo.com。这样所有的微博产品都被识别,或者影响了。
2.正则表达式的面不能太大,这样就产生应用之间的误识别。
正则表达式的面也不能太小,这样网络报文随应用的细小变化,都会引起应用识别的不准确或者失效。、
根据http报文内容进行分析,本例子中需要注意几个关键点:POST/GET、 Host、还有微博内容前面带着的关键词text,这个可能是区别与其它应用的关键点。
本例正则表达式:
1.regex=^POSTx20/aj/mblog/add.*weibo.*text
2.regex=^POSTx20.*weibo.*text
3.regex=^POSTx20.*add.*weibo.*text
4.regex=^POSTx20/aj/mblog/add.*weibo
注:正则表达式的写法这里不详细解释,可以参考关于应用识别的上一篇文章。
这里我写几种范围不同的正则表达式,这就涉及到正则表达式范围大小的问题,根据实际情况把握。
这里我根据实习公司的规则要求写一个识别发微博应用的规则,这有点不好意思。我做一下调整,避开不必要的麻烦。很多应用的规则组成应用的协议库,以便识别应用。
ApplicationId: SG_APP_SINA_WEIBO_LOGIN ApplicationName:SinaWeiboPublish name_cn: 新浪微博发布 ApplicationType: APP_SOCIAL_NETWORK ApplicationProtocol: TCP ScanLength: ^POSTx20.*add.*weibo.*text
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |