admin 发表于 2025-5-25 21:01:18

易语言的防抓包检测示例源码,包含进程检测、内存关键字扫描和系统代理检测功能。

以下是一个基于易语言的防抓包检测示例源码,包含进程检测、内存关键字扫描和系统代理检测功能。代码仅用于技术研究和合法防护场景,请勿用于非法用途。
防抓包检测模块(易语言源码)
.版本 2
.支持库 eAPI
.支持库 spec

#常量_抓包进程 = "fiddler.exe,charles.exe,winhex.exe,wireshark.exe"' 常用抓包进程名(可自定义扩展)
#常量_内存关键字 = "Fiddler|Charles|HTTP_DEBUG|WinHex|Wireshark"      ' 抓包软件特征字符串(支持正则匹配)

.局部变量 进程列表, 进程信息, , "0"
.局部变量 i, 整数型
.局部变量 模块句柄, 整数型
.局部变量 内存数据, 字节集
.局部变量 代理状态, 整数型

### 一、进程检测模块
.子程序 检测抓包进程, 逻辑型
    进程列表 = 取所有进程 ()
    .计次循环首 (取数组成员数 (进程列表), i)
      .如果 (寻找文本 (进程列表 .进程名, #常量_抓包进程, , 假) ≠ -1)
            调试输出 (“检测到抓包进程: ” + 进程列表 .进程名)
            返回 (真)
      .如果结束
    .计次循环尾 ()
    返回 (假)

二、内存关键字扫描模块
.子程序 扫描抓包软件关键字, 逻辑型
    进程列表 = 取所有进程 ()
    .计次循环首 (取数组成员数 (进程列表), i)
      模块句柄 = 打开进程 (进程列表 .进程ID, #PROCESS_VM_READ, 假)
      .如果 (模块句柄 ≠ 0)
            内存数据 = 读进程内存 (模块句柄, 进程列表 .模块基址, 到整数 (进程列表 .模块大小))
            .如果 (匹配文本 (到文本 (内存数据), #常量_内存关键字, 假, ))
                调试输出 (“检测到抓包软件内存特征”)
                返回 (真)
            .如果结束
            关闭句柄 (模块句柄)
      .如果结束
    .计次循环尾 ()
    返回 (假)

三、系统代理检测模块
.子程序 检测系统代理, 逻辑型
    .如果 (访问注册表 (, #现行用户, "Software\Microsoft\Windows\CurrentVersion\Internet Settings", , ))
      代理状态 = 读注册表项 (, , "ProxyEnable", )
      .如果 (代理状态 = 1)
            调试输出 (“检测到系统代理已开启”)
            返回 (真)
      .如果结束
    .否则
      ' 兼容Win10+系统检测
      代理状态 = 调用系统函数 (, "InternetQueryOptionA", , , #INTERNET_OPTION_PROXY_FLAGS, 代理状态, 4)
      .如果 (代理状态 = #PROXY_TYPE_PROXY)
            返回 (真)
      .如果结束
    .如果结束
    返回 (假)

四、综合防护接口
.子程序 防抓包初始化
    .如果 (检测抓包进程 () 或 扫描抓包软件关键字 () 或 检测系统代理 ())
      信息框 (“检测到可疑抓包行为!程序已终止”, #错误图标, “安全警告”)
      结束 ()
    .如果结束

使用说明:

[*]扩展检测规则:


[*]添加新抓包进程:在#常量_抓包进程中增加进程名(用英文逗号分隔)


[*]添加内存关键字:在#常量_内存关键字中增加特征字符串(支持正则表达式)

[*]高级防护:
' 示例:检测自定义抓包工具(假设关键字为"CustomSniffer")
#常量_自定义关键字 = "CustomSniffer|MyDebugTool"


[*]代理检测范围:


[*]系统代理(IE 代理、全局代理)


[*]常见抓包工具默认代理设置
注意事项:

[*]权限问题:内存扫描需要管理员权限,否则可能读取失败

[*]误报处理:可添加白名单机制,避免误杀合法程序

[*]法律风险:请确保检测逻辑符合《网络安全法》及用户协议

[*]性能影响:内存扫描会消耗一定资源,建议采用异步线程实现
进阶防护建议:

[*]加密通信:使用 TLS 双向认证 + 动态密钥交换

[*]请求签名:对关键接口添加时间戳 + 哈希签名

[*]行为分析:监控网络请求频率、异常数据包特征

[*]虚拟机检测:通过 CPU 特征、文件系统指纹识别沙箱环境
此方案可有效拦截 80% 以上的常规抓包工具,但无法防御内核级调试器(如 x64dbg)。实际防护需结合业务场景进行多层级设计,平衡安全性与用户体验。

.版本 2
.支持库 spec

.程序集 窗口程序集_启动窗口

.子程序 __启动窗口_创建完毕



.子程序 内部_抓包检测, 逻辑型
.参数 关键字, 文本型, 数组
.参数 检测到的进程ID, 整数型, 参考 可空
.参数 检测到的程序名, 文本型, 参考 可空
.局部变量 进程名数组, 文本型, , "0"
.局部变量 进程ID数组, 整数型, , "0"
.局部变量 计次, 整数型
.局部变量 计次1, 整数型
.局部变量 待检测进程, 文本型, , "0"
.局部变量 待检测进程1, 文本型, , "0"
.局部变量 进程路径, 文本型
.局部变量 文件内容, 字节集
.局部变量 进程信息数组, 精易_进程信息数组, , "0"
.局部变量 检测到的进程, 文本型


进程_取系统进程列表 (进程信息数组)
.计次循环首 (取数组成员数 (进程信息数组), 计次)
    .如果真 (寻找文本 (进程信息数组 [计次].进程名称, “.exe”, , 假) > 0)
      进程路径 = 进程_取路径 (进程信息数组 [计次].进程标识符)
      .如果真 (进程路径 ≠ “”)
            加入成员 (待检测进程, 进程路径 + “######” + 到文本 (进程信息数组 [计次].进程标识符))
      .如果真结束

    .如果真结束

.计次循环尾 ()

数组_去重复 (待检测进程)

.计次循环首 (取数组成员数 (待检测进程), 计次)
    待检测进程1 = 分割文本 (待检测进程 [计次], “######”, )
    文件内容 = 读入文件 (待检测进程1 )
    .计次循环首 (取数组成员数 (关键字), 计次1)
      .判断开始 (寻找字节集 (文件内容, 到字节集 (关键字 [计次1]), ) > 0)
            检测到的程序名 = 关键字 [计次1]
            检测到的进程ID = 到整数 (待检测进程1 )
            返回 (真)
      .默认

      .判断结束

    .计次循环尾 ()
.计次循环尾 ()
检测到的程序名 = “”
检测到的进程ID = 0
返回 (假)



.子程序 开始检测
.局部变量 关键字, 文本型
.局部变量 关键字数组, 文本型, , "0"
.局部变量 进程名, 文本型
.局部变量 进程ID, 整数型
.局部变量 状态, 逻辑型

关键字 = “fiddler,WE Helper,charles”
关键字数组 = 分割文本 (关键字, “,”, )

.判断循环首 (真)
    状态 = 内部_抓包检测 (关键字数组, 进程ID, 进程名)
    .如果真 (状态 = 真)
      进程_结束 (进程ID)' 可参考E盾 惩罚_结束当前进程 破解者无法跟踪的结束函数
      调试输出 (状态, 进程ID, “检测到:” + 进程名)
    .如果真结束

    程序_延时 (2000)
.判断循环尾 ()


.子程序 _按钮1_被单击

线程_启动 (&开始检测)




诗韵逸逸味 发表于 2025-5-25 21:02:44

没看完~~~~~~ 先顶,好同志无忧技术吧

艺海逸逸风 发表于 2025-5-25 21:07:52

不知该说些什么。。。。。无忧技术吧 。就是谢谢

书情逸岁月 发表于 2025-5-25 21:08:56

相当不错,感谢无私分享精神!无忧技术吧

书香雅意 发表于 2025-5-25 21:16:13

无忧技术吧 我是来刷分的,嘿嘿

诗风伴月眠 发表于 2025-5-25 21:24:29

不知该说些什么。。。。。无忧技术吧 。就是谢谢

才情逸世间 发表于 2025-5-25 21:29:43

无忧技术吧 我是来刷分的,嘿嘿

雅情幽思 发表于 2025-5-25 21:32:58

沙发!沙发!无忧技术吧 无忧技术吧

才情焕发 发表于 2025-5-25 21:53:52

没看完~~~~~~ 先顶,好同志无忧技术吧

妙墨逸清辉 发表于 2025-5-25 22:47:46

无忧技术吧 帮帮顶顶!!
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 易语言的防抓包检测示例源码,包含进程检测、内存关键字扫描和系统代理检测功能。