【网络安全】SSLSplit源码流程分析-中间人攻击

本文详细介绍了SSLSplit源码的主流程和连接过程,包括参数解析、连接服务器和客户端的步骤。通过proxy_listener_acceptcb、pxy_conn_setup等函数建立并处理连接,使用bufferevent_setcb设置读写回调函数。主要数据结构包括proxyspec_t和opts_t,用于存储配置和连接信息。
摘要由CSDN通过智能技术生成

SSLSplit源码可实现中间人攻击,源码处理流程及连接过程如下:

一、主流程:

Main->参数解析->proxy_new->proxy_run.

Main

1、参数解析如x509证书或公钥信息设置opts,解析natengine即代理IP和端口设置opts->spec的监听IP和端口。2、利用proxy_new初始化proxy_ctx_t,将opts赋值给ctx设置线程数, proxy_listener_setup设置代理监听到事件中。

3、proxy_run创建线程,用于每个连接使用,每个连接对应一个evbase事件。

二、连接过程:

1、连接服务器

proxy_listener_setup->proxy_listener_acceptcb(cb callback)->pxy_conn_setup(获取未使用的线程ID供此连接使用,获取真正服务器的IP和端口)->pxy_fd_readcb->pxy_conn_connect(建立目的连接)->pxy_bufferevent_setup(创建Bufferevent用于接收发送目的连接的报文)->bufferevent_setcb设置连接回调函数读写数据。

回调函数

bufferevent_setcb(bev, pxy_bev_readcb,pxy_bev_writecb,

             

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值