基于eBPF技术实现TLS加密的明文捕获

描述

基于eBPF技术实现TLS加密的明文捕获,无需CA证书

eCapture支持tls、bash、mysqld、postgres等模块的信息提取与捕获

支持Linux系统内核4.15以上版本,支持Android系统内核5.4以上版本

不支持Windows、macOS系统

eCapture工作原理和系统架构

 

https://ecapture.cc/zh/guide/how-it-works.html

 

eBPF HOOK uprobe实现的各种用户态进程的数据捕获,无需改动原程序

(1).SSL/HTTPS数据导出功能,针对HTTPS的数据包抓取,不需要导入CA证书。

(2).bash的命令捕获,HIDS的bash命令监控解决方案。

(3).mysql query等数据库的数据库审计解决方案。

 

https://ecapture.cc/zh/guide/introduction.html
https://ecapture.cc/zh/guide/how-it-works.html
https://ecapture.cc/zh/examples/android.html
https://ecapture.cc/zh/examples/docker.html
https://ecapture.cc/zh/examples/index.html

 

Ubuntu20.04 arm64环境

Ubuntu20.04.2.0环境的安装与配置过程 Ubuntu环境Python3版本的更新升级使用方法 Ubuntu安装配置切换Python3版本的解决方法

 

https://ubuntu.com/#download
https://ubuntu.pkgs.org/20.04/ubuntu-updates-multiverse-arm64/
查看Linux内核版本
cat /proc/version
uname -r
uname -a

 

Linux系统

配置eCapture源码编译环境

 

mkdir ~/env && cd ~/env
wget https://dl.google.com/go/go1.17.13.linux-amd64.tar.gz
tar xvf go1.17.13.linux-amd64.tar.gz
或
wget https://golang.google.cn/dl/go1.18.linux-arm64.tar.gz
tar xvf go1.18.linux-arm64.tar.gz
vim ~/.bashrc
source ~/.bashrc

 

Linux系统

Linux系统

 

sudo apt-get install --yes wget git golang build-essential pkgconf libelf-dev llvm-12 clang-12 linux-tools-generic linux-tools-common
wget https://golang.google.cn/dl/go1.18.linux-arm64.tar.gz
sudo rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.18.linux-arm64.tar.gz

 

Linux系统

Linux系统

 

for tool in "clang" "llc" "llvm-strip"
do
sudo rm -f /usr/bin/$tool
sudo ln -s /usr/bin/$tool-12 /usr/bin/$tool
done

 

Linux系统

 

vim ~/.bashrc
source ~/.bashrc

 

Linux系统

Linux系统

 

git clone https://github.com/ehids/ecapture.git

 

Linux系统

bpftool安装

 

sudo apt install linux-tools-5.15.0-53-generic
sudo apt install linux-tools-generic

 

eCapture源码的编译方法

 

cd ecapture
make

 

Linux系统

Linux系统

Linux系统

(1).编译支持core版本的二进制程序

 

ANDROID=1 make

 

Linux系统

Linux系统

(2).编译仅支持当前内核版本的二进制程序

 

ANDROID=1 make nocore

 

Linux系统

Linux系统

 

adb push ecapture /data/local/tmp/
adb root
adb remount
adb shell
cd /data/local/tmp
chmod 777 ecapture
./ecapture tls

 




审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分