Commit Graph

65 Commits

Author SHA1 Message Date
zhengchao
7431a0e50a 修改ssl_chello_parse相关函数,处理TLS Grease导致的客户端标识不准确,详见 https://security.stackexchange.com/questions/176951/google-chrome-weird-random-cipher-suite 2019-05-25 15:54:28 +08:00
崔一鸣
72d170aec2 添加ssl_cipher_suites_convert函数 2019-05-24 23:15:58 +08:00
崔一鸣
75208aad0f 修改chello_parse函数,支持解析supported_versions, supported_groups,signature_algorithms,修改cipher_suites解析结果为原始报文 2019-05-24 20:25:35 +08:00
zhengchao
c85b200f69 手工合并李杰stek-roation分支,支持session ticket rotation,详见 #123 2019-05-24 18:55:33 +08:00
zhengchao
4cd42b9f95 1. 客户端报SSL_R_SSLV3_ALERT_CERTIFICATE_UNKNOWN错误时,不作为maybe pinning; 2. ssl policy中增加protocol_errors的bypass开关。 2019-05-24 18:55:31 +08:00
zhengchao
1f73b4832d 在ssl policy中处理keyring。 2019-05-24 18:55:31 +08:00
zhengchao
e4291c0fda 1. 暴露ssl_stream.h给业务层;2. 将ssl policy功能放到业务层插件目录。 2019-05-24 18:55:30 +08:00
zhengchao
7cbd432a25 业务层拦截策略(ssl policy)对接ssl stream。 2019-05-24 18:52:34 +08:00
zhengchao
61bc647d1f 编写连接业务层的代码。 2019-05-24 18:52:33 +08:00
zhengchao
dda60c674c up session cache校验ssl version,增加ssl状态读写的接口。 2019-05-24 18:52:32 +08:00
zhengchao
630a3dba60 可以检测certificate pinning和mutual authentication。 2019-05-24 18:52:32 +08:00
zhengchao
ea0292f1b4 1. 可以获取x509证书的ct和ev状态。2. hostname不匹配,不认为是非法证书。 2019-05-24 18:52:31 +08:00
zhengchao
f4f7a623a5 允许设置证书校验选项。 2019-05-24 18:52:31 +08:00
zhengchao
f349d1254f tcp stream使用ssl stream提供的函数输出ssl错误日志。 2019-02-26 19:47:16 +06:00
luqiuwen
df025b3d9f Close #116 去除根据ClientHello镜像上游SSL版本的功能,增加在连接摘要日志记录SSL版本和SNI的功能 2019-02-19 15:11:15 +06:00
zhengchao
71f7452413 增加ssl_stream_dump_info函数,输出ssl版本号、sni,以进一步定位 #116 2019-02-18 18:25:19 +06:00
zhengchao
124b7f083f 增加no_mirror_client_cipher_suite开关;ssl_utils.cpp改名后cmakelist未响应修改; 2019-01-14 20:35:29 +06:00
luqiuwen
8713da2d81 修正Http-kill位置过完的问题,增加TCP链接摘要日志功能 2018-12-14 03:06:34 +06:00
zhengchao
76f0efe3cb 对新签发或请求certstore的证书计数。 2018-12-12 15:01:18 +06:00
luqiuwen
de92efb380 Close #99 增加全局传输限速功能,增加passthrough状态下eventcb的错误日志
* 增加全局传输限速功能,可以限制上游、下游的传输速度;
* 增加eventcb中的错误日志,当BEV_EVENT_ERROR发生时,打印错误代码与日志信息。
2018-12-08 20:48:19 +06:00
zhengchao
ce9d7fa5eb #64 key keeper增加evdnsbase参数。
避免创建大量dnsbase,耗尽fd。ssl stream/tcp stream/proxy也做了相应修改。
2018-11-26 14:55:39 +08:00
zhengchao
ca650d12ff #64 在tfe.conf中增加check_cert_crl开关,默认关闭CRL校验。 2018-11-13 10:50:08 +08:00
Lu Qiuwen
d83348f41d 增加设置upstream, downstream的TTL或MaxHop功能,便于在捕获的报文中区分上、下行连接。 2018-11-08 19:14:47 +08:00
zhengchao
668c1b3e52 #68 从目录中加载额外的证书和crl。 2018-11-04 14:58:54 +08:00
Lu Qiuwen
d0ea605a5b 修正多TCP层插件同时注册时,只调用一个插件open函数的缺陷。 2018-11-04 14:17:41 +08:00
Lu Qiuwen
b3b65369d8 增加连接层的性能统计 2018-11-02 13:52:30 +08:00
zhengchao
198818a2aa 完成tfe中相关功能的开发,回归测试通过。 2018-10-31 19:44:13 +08:00
Lu Qiuwen
f87e21d323 改进HTTP访问日志格式 2018-10-24 20:53:29 +08:00
zhengchao
c53641bc27 证书校验不通过时,输出证书信息。 2018-10-23 19:30:08 +08:00
Lu Qiuwen
213924e77e Close #48 增加从KNI读取KEYRING-ID的功能 2018-10-19 19:50:27 +08:00
Lu Qiuwen
529f7037ba 修正流式发送数据时,客户端异常断开后引起的段错误 2018-10-18 16:57:53 +08:00
zhengchao
71109517b4 增加HTTP业务层和缓存运行状态统计。业务层状态输出到tfe.fieldstat,缓存输出到cache.fieldstat。增加缓存开关。 2018-10-17 20:21:21 +08:00
Lu Qiuwen
e9c11824b0 STREAM挂起时记录挂起来源,在RESUME()触发对应连接方向的读事件。HTTP SUSPEND/RESUME功能初步调通 2018-10-14 20:29:52 +08:00
zhengchao
a925bf738e 增加获取evbase、线程数、标准HTTP field设置的工具函数 2018-10-14 14:07:47 +08:00
Lu Qiuwen
b8342e5358 #34 实现HTTP解析层的Suspend/Resume操作 2018-10-14 14:05:39 +08:00
zhengchao
d7bf70b4b0 ssl stream修复upstream session cache key生成错误的bug。 2018-10-05 18:30:58 +08:00
zhengchao
9ec072343b fieldstat增加sigpipe计数。 2018-10-05 14:34:51 +08:00
zhengchao
7fd3f5d1fb 增加proxy初始化fieldstat,增加sslstream的状态统计输出。 2018-10-05 13:31:10 +08:00
Lu Qiuwen
2798783641 初步完成HTTP应答侧解析功能,并修正一系类错误处理类的问题。 2018-09-23 17:33:05 +08:00
Lu Qiuwen
7b6dbb06aa 增加读入USER_TIMEOUT TCP选项,修正timeout相关的setsockopt设置。 2018-09-21 19:06:44 +08:00
Lu Qiuwen
1a70d3948a 增加TCP Keepalive选项设置功能,避免部分fd因网络故障无法淘汰。 2018-09-21 16:11:54 +08:00
Lu Qiuwen
c0d1b9cf63 增加Per Stream摘要日志功能,修正TCP上、下游连接不能联动关闭的问题。
* 增加Per Stream摘要日志功能,记录连接四元组、HTTP URL等关键信息,便于调试;
* 原实现在上游连接关闭时,不能关闭下游连接(反之亦然),现修正。
2018-09-21 15:03:33 +08:00
zhengchao
7c49a89755 ssl_stream集成新的client hello解析模块。 2018-09-14 18:43:28 +08:00
崔一鸣
aa4d83e464 fix bugs 2018-09-14 17:30:13 +08:00
崔一鸣
e89ac9d9da fix bugs 2018-09-14 17:30:12 +08:00
崔一鸣
b5a937bad6 fix memory leak bugs 2018-09-07 17:49:15 +08:00
Lu Qiuwen
b6a2250786 完成HTTP请求侧解析调试,可以解析请求的URL。
* 增加插件管理功能(简单实现),可以调用解析层插件;
* 调整HTTP请求侧解析回调函数实现;
* 增加hexdump工具函数;
2018-09-07 17:27:58 +08:00
zhengchao
6bc0409756 修复ssl session缓存中对openssl的不正确使用。 2018-09-05 19:49:37 +08:00
zhengchao
af6340becf 完成和key keeper的联调。 2018-09-04 18:13:05 +08:00
崔一鸣
636e41cfca add feature-key-keeper 2018-09-04 15:47:41 +08:00