这个网络中所有人的上网内容我都看的清清楚楚,是不是很可怕?我就是传说中的上网行为监控软件。可以对企业局域网电脑进行监控。可以监控到上网记录,聊天记录,邮件记录,外发文件记录,还可以自动录制屏幕快照!
【编辑推荐:企业员工电脑如何监控?】
我被一家公司老板买来运行在一个配置极高的 Linux 服务器上,这台服务器上的网卡可不得了,公司进出的网络数据包都得流经它,它源源不断的把数据包抓上来交给我来分析。
你们应该也知道,网络通信是分层的,最常见的就是那个 TCP/IP 协议体系了。
拿到数据包后,我就得按照这个协议规范,一层层的脱去协议的外壳,拿到它们的负载数据。
TCP 会话重组
我重点要照顾的是 TCP 协议,因为好多应用都要使用 TCP 来传输,像上网冲浪 HTTP、发邮件 SMTP、微信聊天等等。
我想要掌控网络中的通信,第一个就要拿 TCP 开刀,得想办法把 TCP 传输的一个个数据包给重组起来,形成一个完整的会话,这样我才好知道应用层传了什么东西,这个步骤叫做会话重组。
不过这个 TCP 协议有点复杂,抛开我们抓到的包本来就存在乱序的情况不说,它本身还有三次握手、四次挥手、超时重传、延迟回复等很多机制。
有时候还会遇到时间跨度很久的长连接,这无疑都给我想要重组 TCP 会话造成了很大的难度。
而我重组 TCP 会话的唯一线索就是数据包包头中的序列号 SEQ 和确认号 ACK。
不过我还是死磕 RFC 规范,把这些问题都攻克了,能够成功重组出一个个的 TCP 会话数据,成功率还蛮高的。
应用协议识别
TCP 会话重组出来了,我就可以拿到里面传输的数据了。接下来要做的一件事就是识别应用层到底是什么应用在传输的呢?
用我们的行话说,那就是做应用协议识别,这个时候我就得看一下端口了。
我根据三次握手数据包的方向,就可以确定出谁是客户端,谁是服务端。
再看一下服务端的端口号(这个在 TCP 包头里面就可以看到),就能知道这是一个什么服务了。
像常见的有下面这些:
最常见的就是 80 端口的 Web 服务了,人类每天上网都在用到。
有时候 Web 服务不走 80 端口,换成了别的,不过这难不倒我,我可以通过分析 TCP 的负载数据特征,看看有没有 HTTP 协议的特征出现,因为 HTTP 协议的特征实在是太明显啦!
到了后来,根据端口的经验出错的概率越来越大了,我就统一根据内容来进行识别判断,不再相信端口。
每个应用都有它们各自的协议特征,这个识别我可是下了点功夫,轻易不会透露。
文件还原
现在我知道应用层是什么协议了,我就可以把应用层协议传输的数据给整明白了。
还是拿最常见的 Web 服务来说吧,HTTP 协议是一个基于请求-响应的协议,比如下面的这一次通信:
请求是一个 GET 包,看请求的资源貌似是一张 JPG 图片。
再看响应包,状态码是 200 OK,看来没啥问题。再看看 Content-Type,image/jpeg,是个 JPG 图片没跑了。
现在我就可以定位到响应包的负载段,就是在 HTTP 头,两个回车换行(0D0A)后面就是数据了。
找到数据位置,再根据 Content-Length 的大小,把数据抠出来写成一个 PNG 格式的文件就大功告成了!
OMG,这是哪个血气方刚的小伙子又在看美女图片了!
上面这个把协议中传输的文件提取出来的过程叫做文件还原,除了 HTTP 协议,我还支持文件传输协议 FTP、邮件传输协议 SMTP、文件共享的 SMB 协议呢。
你们通过这些协议传输的文件,我都能给你还原出来,是不是很可怕?
HTTPS 解密
有一天,我发现 80 端口的数据包越来越少了,与此同时,443 端口的通信数据不知不觉多了起来。
后来才知道原来为了防止被我这样的网络中间人窥探隐私,他们都用上了一个叫 HTTPS 的技术。
HTTPS 把数据进行了加密传输,这样我拿到以后都是加密后的,没办法知道传输了什么内容。
不过这家公司的老板很聪明,他要求公司的员工电脑上都装上了一个“安全软件”。
美其名曰保护电脑不被入侵,实际上啊是在他们的电脑上做了一个中间人劫持,进行了 HTTPS 的证书替换(你不信可以看看这个:谁动了你的 HTTPS 流量?)。
这个“安全软件”作为中间人把 HTTPS 证书和密钥告诉我,我就可以解密 HTTPS 流量了!你们上网干了啥我还是能知道的一清二楚!
网络阻断
你以为我只能在一旁监听吗?图样!
要是你们访问那些敏感的网站,或者尝试把老板交代给我重点看护的数据偷偷传出去,那我就不只是看着那么简单了,这个时候我就要启动阻断功能。
为了不影响公司网络的运转,我一般都是旁路部署的,这样要是我哪天抽风遇到了 Bug,还可以立即把我撤下去。
这个所谓旁路部署呢,就是抓取的包都是一份拷贝,而不是通过我转发。
不过这样一来也给我阻断网络通信带来了一些麻烦,如果我是串联到网络中,那可就简单了,遇到那些可疑的网络连接我直接丢掉数据包,不转发出去就得了。
可现在我不是串联,而是旁路部署,怎么办呢?
聪明如我,怎么可能被这小小的问题难住?我可是深谙 TCP 协议的行家,在发现可疑的连接建立的时候,就将它掐灭在萌芽状态!
当我发现可疑的 SYN 数据包时,在服务端回复第二次握手包之前,以迅雷不及掩耳盗铃之势,用服务器 IP 的名义伪造一个 RST 的数据包给客户端,这样连接就被我掐断了!
这一招虽然不能保证百分之百成功,但我离客户端更近,我的伪造包一般都能比真正的服务端响应包早一步到达客户端,所以成功率还是蛮高的!
唉,说曹操,曹操就到!发现了一个可疑的连接来了,先不说了,我要去忙了~
彩蛋:悄悄告诉你们,上次公司 HR 给我导入了一批 URL 列表,让我重点关注下都是谁在访问非法网站。【转载:编程技术宇宙 作者:轩辕之风】
局域网监控软件可以监控外网吗?一文解析
如今,随着数字办公的日益普及,局域网监控软件已经成为企业网络管理不可或缺的一部分。然而,局域网监控软件能否监控外网一直困扰着许多企业网络工程师。本文将深入探讨这一问题,分析局域网监控软件在外网监控中能力与局限性。一、局域网监控软件的主要功能局域网监控软件是一种基于桌面管理软件和监控系统的综合监控工具。它通常具有以下基本...
安企神网络安全准入系统
安企神软件网络安全准入系统是一种高效、灵活、易于管理的网络密钥管理解决方案,旨在为公司网络环境提供全面的安全保障。通过身份认证、健康体检和安全设置评定,此系统保证只有授权的设备与用户才能浏览公司的内部网络资源,进而最大限度地降低安全隐患。一、网络安全准入系统主要功能1、用户身份认证安企神网络准入系统选用严格的身份认证机...
网络准入设备:守护企业数字资产的第一道防线
在数字时代,公司网络如同公司的神经系统,连接着每个业务单元,背负着数据的流动与价值的转换。但是,随着网络环境的日益繁杂,网络威协也非常大。怎样确保公司网络的安全平稳已成为每家企业必须面对的挑战。做为这条防线的门将,网络准入设备发挥了越来越重要的作用。一、什么叫网络准入设备?网络准入设备是一种专门给控制和管理网络设备访问...
企业数据防泄密软件有哪些?企业数据防泄密软件大盘点
在当今数字时代,公司数据的安全至关重要。为了保护公司的核心资产和客户资料免遭威胁,很多企业都在寻找高效的数据防泄密软件。今天我们就来盘点一下市场上广受好评的几款公司数据防泄密软件,帮助大家更好的了解和选择适合自己公司的防泄漏解决方案。一、安企神软件安企神软件集数据加密、密钥管理、行为审计等多种功能于一体,为用户提供全方...
揭秘数据加密系统的加密过程
在数字时代,数据安全已是企业和个人不可忽视一个重要难题。数据加密系统做为数据安全重要防御,在加密过程中非常重要。本文将详尽揭露数据加密的全面加密过程,以帮助您更好的了解这一关键要素。一、数据加密系统的前提数据加密系统通常包括三个核心部分:加密算法、密钥管理与信息加密破译过程。加密算法是数据加密的关键,它决定了如何把明文...