From 4bbe8ea62f5a39e83331166768aab604775d0cc7 Mon Sep 17 00:00:00 2001 From: ccyj <2384899431@qq.com> Date: Sun, 5 May 2024 20:12:43 +0800 Subject: [PATCH 1/3] =?UTF-8?q?doc=EF=BC=9A=E5=A2=9E=E5=8A=A0=E6=A3=80?= =?UTF-8?q?=E6=B5=8BPython=E5=AF=B9=E5=85=B6=E4=BB=96=E8=AF=AD=E8=A8=80?= =?UTF-8?q?=E7=9A=84=E5=B0=81=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/idea.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/docs/idea.md b/docs/idea.md index b018920..668395a 100644 --- a/docs/idea.md +++ b/docs/idea.md @@ -8,6 +8,10 @@ 参考项目: [https://github.com/SonarSource/sonarqube] +检查源代码的语法和关键词。通过这种方式,可以发现是否存在与其他语言的交互,比如调用外部命令、使用其他语言的扩展模块、与其他语言的接口交互等。 + +实现方法:可以使用Python代码解析库(如ast模块)来分析语法树,并检查特定的代码模式或结构;开发脚本来搜索Python代码中常用于与其他语言交互的关键词和函数,例如ctypes、subprocess、os.system等 + ## 控制流分析 通过分析程序的控制流(即程序中各个操作的执行顺序),可以检测到异常的控制流路径,这些路径可能是后门的迹象。 @@ -22,6 +26,10 @@ 这个网站可以搜索依赖中是否存在漏洞: [https://security.snyk.io/package/pip/] +分析代码库中的依赖关系,查找是否导入了与其他语言交互相关的模块或库 + +实施策略:开发脚本进行依赖库对比匹配 + ## 异常行为检测 通过定义“正常”代码行为的基线,可以标识出异常行为,这些异常行为可能指示着后门的存在。 @@ -33,3 +41,10 @@ 使用NLP技术来训练机器学习模型,以自动从大量代码中学习和识别异常或潜在的后门模式。 开发方法:采用深度学习框架如TensorFlow或PyTorch,结合NLP处理工具,训练模型识别代码中的异常行为。 + +## 动态代码执行监控 + +在Python代码执行时,监视程序的行为并记录其与其他语言的交互。 + +实现方法:通过在代码执行过程中动态检查导入的模块、调用的函数以及执行的系统调用来实现。使用Python的调试器或操作系统级别的工具(如strace或ltrace)可以帮助捕获这些信息。 + From 3c7e5f4c3da3bc2db35e6ac181a1530edf3c822c Mon Sep 17 00:00:00 2001 From: ccyj <2384899431@qq.com> Date: Sat, 11 May 2024 21:37:35 +0800 Subject: [PATCH 2/3] =?UTF-8?q?doc=EF=BC=9A=E5=A2=9E=E5=8A=A0=E6=A3=80?= =?UTF-8?q?=E6=B5=8BPython=E5=AF=B9=E5=85=B6=E4=BB=96=E8=AF=AD=E8=A8=80?= =?UTF-8?q?=E7=9A=84=E5=B0=81=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/idea.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/docs/idea.md b/docs/idea.md index 668395a..1e7f329 100644 --- a/docs/idea.md +++ b/docs/idea.md @@ -42,9 +42,5 @@ 开发方法:采用深度学习框架如TensorFlow或PyTorch,结合NLP处理工具,训练模型识别代码中的异常行为。 -## 动态代码执行监控 -在Python代码执行时,监视程序的行为并记录其与其他语言的交互。 - -实现方法:通过在代码执行过程中动态检查导入的模块、调用的函数以及执行的系统调用来实现。使用Python的调试器或操作系统级别的工具(如strace或ltrace)可以帮助捕获这些信息。 From 80fff100b51c0a5ec62a1b42f8089dee89e4e2b4 Mon Sep 17 00:00:00 2001 From: sangge-redmi <2251250136@qq.com> Date: Tue, 14 May 2024 17:59:19 +0800 Subject: [PATCH 3/3] fix: fix http proxy --- .github/workflows/python-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python-tests.yml b/.github/workflows/python-tests.yml index 42d9e64..3262e1f 100644 --- a/.github/workflows/python-tests.yml +++ b/.github/workflows/python-tests.yml @@ -18,4 +18,4 @@ jobs: run: python -m unittest discover -s tests env: OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} - http_proxy: http://192.168.1.3:10809 + http_proxy: http://192.168.1.2:10809