peetch:一个针对eBPF的安全实践研究平台

VSole2022-08-24 17:06:40

关于peetch

peetch是一个针对eBPF的安全实践研究平台,该平台由多种工具组成,旨在帮助广大研究人员通过各种方式绕过TLS协议保护功能,并以此来研究和分析eBPF的安全性。

当前版本的peetch支持两个子命令,第一个为“dump”,该命令可以通过关于每个数据包源进程的相关信息来嗅探网络流量;第二个命令为“tls”,该命令可以使用OpenSSL来提取加密密钥,并识别进程信息。

通过使用这两个命令,我们可以轻松解密PCAPng格式中记录的TLS交换记录。

工具限制

当前版本的peetch仅支持OpenSSL和TLS 1.2。

工具安装

peetch的正常工作需要依赖多个组件,其中包括bcc和Scapy。我们可以通过使用Docker镜像来轻松构建工具环境,相关命令如下:

docker build -t quarkslab/peetch . 

工具使用

下列给出的命令可以帮助你进入peetch的Docker镜像,并启动peetch:

docker run --privileged --network host --mount type=bind,source=/sys,target=/sys --mount type=bind,source=/proc,target=/proc --rm -it quarkslab/peetch

dump命令

dump命令可以帮助我们使用一个eBPF TC分类符来嗅探网络数据包,并获取对应进程的PID和进程名称:

peetch dumpcurl/1289291 - Ether / IP / TCP 10.211.55.10:53052 > 208.97.177.124:https S / Paddingcurl/1289291 - Ether / IP / TCP 208.97.177.124:https > 10.211.55.10:53052 SA / Paddingcurl/1289291 - Ether / IP / TCP 10.211.55.10:53052 > 208.97.177.124:https A / Paddingcurl/1289291 - Ether / IP / TCP 10.211.55.10:53052 > 208.97.177.124:https PA / Raw / Paddingcurl/1289291 - Ether / IP / TCP 208.97.177.124:https > 10.211.55.10:53052 A / Padding

需要注意的是,dump命令只会基于TCP分段来捕捉IPv4流量。为了方便起见,捕捉到的数据包可以使用“--write”命令保存为PCAPng格式(包含进程相关信息):

peetch dump --write peetch.pcapng^C

这种PCAPng格式支持使用WireShark或Scapy来进行修改

scapy>>> l = rdpcap("peetch.pcapng")>>> l[0]<Ether  dst=00:1c:42:00:00:18 src=00:1c:42:54:f3:34 type=IPv4 |<IP  version=4 ihl=5 tos=0x0 len=60 id=11088 flags=DF frag=0 ttl=64 proto=tcp chksum=0x4bb1 src=10.211.55.10 dst=208.97.177.124 |<TCP  sport=53054 dport=https seq=631406526 ack=0 dataofs=10 reserved=0 flags=S window=64240 chksum=0xc3e9 urgptr=0 options=[('MSS', 1460), ('SAckOK', b''), ('Timestamp', (1272423534, 0)), ('NOP', None), ('WScale', 7)] |<Padding  load='\x00\x00' |>>>>>>> l[0].commentb'curl/1289909'

tls命令

这个子命令旨在识别使用了OpenSSL的进程,并尝试导出进程相关的各种明文信息以及敏感数据。默认情况下,“peetch tls”只会按行显示每个进程的信息,如果使用“--directions”参数则可以显示更多交换信息:

peetch tls --directions<- curl (1291078) 208.97.177.124/443 TLS1.2 ECDHE-RSA-AES128-GCM-SHA256> curl (1291078) 208.97.177.124/443 TLS1.-1 ECDHE-RSA-AES128-GCM-SHA256

使用“--content”命令可以显示OpenSSL缓冲区内容:

peetch tls --content<- curl (1290608) 208.97.177.124/443 TLS1.2 ECDHE-RSA-AES128-GCM-SHA256   0000  47 45 54 20 2F 20 48 54 54 50 2F 31 2E 31 0D 0A  GET / HTTP/1.1..
   0010  48 6F 73 74 3A 20 77 77 77 2E 70 65 72 64 75 2E  Host: www.perdu.
   0020  63 6F 6D 0D 0A 55 73 65 72 2D 41 67 65 6E 74 3A  com..User-Agent:
   0030  20 63 75 72 6C 2F 37 2E 36 38 2E 30 0D 0A 41 63   curl/7.68.0..Ac
-> curl (1290608) 208.97.177.124/443 TLS1.-1 ECDHE-RSA-AES128-GCM-SHA256
   0000  48 54 54 50 2F 31 2E 31 20 32 30 30 20 4F 4B 0D  HTTP/1.1 200 OK.
   0010  0A 44 61 74 65 3A 20 54 68 75 2C 20 31 39 20 4D  .Date: Thu, 19 M
   0020  61 79 20 32 30 32 32 20 31 38 3A 31 36 3A 30 31  ay 2022 18:16:01
   0030  20 47 4D 54 0D 0A 53 65 72 76 65 72 3A 20 41 70   GMT..Server: Ap

“--secrets”参数可以显示从内存中提取出来的TLS aMaster Secrets,下列示例将利用“--write”命令写入提取出的敏感信息:

$ (sleep 5; curl https://www.perdu.com/?name=highly%20secret%20information --tls-max 1.2 -http1.1) &# peetch tls --write &
curl (1293232) 208.97.177.124/443 TLS1.2 ECDHE-RSA-AES128-GCM-SHA256
# peetch dump --write traffic.pcapng
^C
# Add the master secret to a PCAPng file
$ editcap --inject-secrets tls,1293232-master_secret.log traffic.pcapng traffic-ms.pcapng

许可证协议

本项目的开发与发布遵循GPL-2.0开源许可证协议。

tls安全平台
本作品采用《CC 协议》,转载必须注明作者和本文链接
零信任安全代表了新一代网络安全防护理念,并非指某种单一的安全技术或产品,其目标是为了降低资源访问过程中的安全风险,防止在未经授权情况下的资源访问,其关键是打破信任和网络位置的默认绑定关系。
Chainguard本周发布了内存安全Linux发行版——Wolfi,宣称能从根本上杜绝大量已知软件漏洞。
在整合的大趋势背后,企业端点安全管理正面临着十大挑战。
最近研究一些防火墙的一些技术,因为现在大多数服务器都架设了防火墙,所以管理员们一致认为只要有了防火墙,那服务器就是安全的。
Dismap能协助红队人员识别潜在风险资产,并支持蓝队人员检测可疑的脆弱资产。该工具包括将Sigma规则转换为Hayabusa规则格式的功能。Hayabusa可以以多种方式使用,包括对单个系统的实时分析,通过从单个或多个系统收集日志进行离线分析,或与Velociraptor组合使用,进行企业范围的威胁搜寻和事件响应。其目的是支持红队分析和报告指挥和控制活动。
各经济体更加重视数据竞争力,纷纷制定出台数据战略,宣誓数据安全和主权。因此,欧盟认为必须建立欧洲数据主权。近年来,我国陆续发布了一系列数据及其安全相关的法律法规和标准规范,数据资产价值得到确认。2020年6月,12部委联合发布《网络安全审查办法》,推动建立国家网络安全审查工作机制。
Dismap可以协助红队人员识别潜在的风险资产,并支持蓝队人员检测可疑的脆弱资产。在Dismap的指纹规则库中,全面包含了TCP、UDP和TLS协议指纹,以及超过4500条常见的Web指纹规则。FaradayFaraday是一个开源的漏洞管理器项目,旨在帮助安全分析师发现漏洞并进行相关的修复工作。
01高门槛,勿入在Cisco平台上有一个很有用的Traceback log功能,实时记录当前Code运行到特
Ceye DNS:DNS oob平台 http://ceye.io/. TLS证书信息查询Censys:https://censys.io. 网络空间搜索Fofa:https://fofa.info/
Ceye DNS:DNS oob平台 http://ceye.io/. TLS证书信息查询Censys:https://censys.io. 网络空间搜索Fofa:https://fofa.info/
VSole
网络安全专家