freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

如何使用PackageDNA检测不同编程语言的软件包安全性
2021-09-24 22:52:42

关于PackageDNA

PackageDNA是一款功能强大的代码安全检测工具。在很多场景中,我们往往会在自己的代码或项目中使用其他的软件包。而该工具可以帮助广大开发人员、研究人员和组织分析采用不同编程语言开发的软件包安全,并提供相关软件包的安全信息,使我们能够提前知道此软件库是否符合安全开发流程。

PackageDNA可以帮助我们检测目标软件包中可能的后门、嵌入的恶意代码、输入错误分析、版本历史记录和CVE漏洞等信息。

工具安装

广大研究人员可以使用下列命令将该项目源码克隆至本地:

git clone https://github.com/ElevenPaths/packagedna

PackageDNA使用了python-magic,即针对libmagic C代码库的一个简单封装,因此我们同样需要安装好这个库。

Debian/Ubuntu

$ sudo apt-get install libmagic1

macOS

brew install libmagic

port install file

Windows

pip install https://pypi.python.org/pypi/python-magic-bin/0.4.14

接下来,运行下列安装脚本:

python3 setup.py install --user

外部模块

PackageDNA使用了外部模块来实现其分析功能,因此同样需要预先安装下列外部模块。

Microsoft AppInpsector

https://github.com/microsoft/ApplicationInspector

Virus Total API

https://www.virustotal.com/

LibrariesIO API

https://libraries.io/

Rubocop

https://github.com/rubocop/rubocop

安装之后,你就可以直接配置外部模块了:

[1] VirusTotal API Key: Your API KEY

[2] AppInspector absolute path: /Local/Path/MSAppInpsectorInstallation

[3] Libraries.io API Key: Your API KEY

[4] Github Token: Your Token

[B] Back

[X] Exit

注意:外部模块并不是必须的,不安装外部模块PackageDNA也能继续执行,但我们建议广大用户安装这些模块,以便工具执行完整的分析。

运行PackageDNA

打开命令行终端,切换到项目根目录,并运行下列命令:

./packagedna.py

_____              _                          ____     __     _  _______

|  __ \            | |                        |  __ \  |   \  | ||  ___  |

| |__) |__ __ ____ | | __   __ __  ____   ___ | |  \ \ | |\ \ | || |___| |

|  ___// _` |/  __)| |/ /  / _` | / _  | / _ \| |   | || | \ \| ||  ___  |

| |   | (_| || (__ | |\ \ | (_| || (_| ||  __/| |__/ / | |  \   || |   | |

|_|    \__,_|\____)|_| \_\ \__,_| \__  | \___||_____/  |_|   \__||_|   |_|

                                   __| |

                                  (____|

 

Modular Packages Analyzer Framework

By ElevenPaths https://www.elevenpaths.com/

Usage: python3 ./packagedna.py

 

[*] -------------------------------------------------------------------------------------------------------------- [*]

[!] Select from the menu:

[*] -------------------------------------------------------------------------------------------------------------- [*]

[1] 分析包(最新版本)

[2] 分析包(所有版本)

[3] 分析本地包

[4] 信息收集

[5] 上传文件并分析所有包

[6] 列出之前分析过的包

[7] 工具配置

[X] 退出

[*] -------------------------------------------------------------------------------------------------------------- [*]

[!] Enter your selection:

项目地址

PackageDNA:GitHub传送门

# 软件安全
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录