packagedna: Detect Malicious Packages in Your Code
![PackageDNA](https://b3442631.smushcdn.com/3442631/wp-content/uploads/2021/08/Screenshot-2021-08-08-103405.png?lossy=1&strip=1&webp=1)
PackageDNA
This tool gives developers, researchers, and companies the ability to analyze software packages of different programming languages that are being or will be used in their codes, providing information that allows them to know in advance if this library complies with processes. secure development, if currently supported, possible backdoors (malicious embedded code), typosquatting analysis, the history of versions, and reported vulnerabilities (CVEs) of the package.
Install
Requirement
PackageDNA uses python-magic which is a simple wrapper around the libmagic C library, and that MUST be installed as well:
- Debian/Ubuntu
$ sudo apt-get install libmagic1 - Windows
You will need DLLs for libmagic. @julian-r has uploaded a version of this project that includes binaries
to PyPI
Other sources of the libraries in the past have been File for Windows.
You will need to copy the file magic out of [binary-zip]\share\misc, and pass its location to Magic(magic_file=…).If you are using a 64-bit build of python, you will need 64-bit libmagic binaries which can be found here. Newer version can be found here. - OSX
When using Homebrew: brew install libmagic
When using macports: port install file
More details: https://pypi.org/project/python-magic/
Install
git clone https://github.com/ElevenPaths/packagedna
python3 setup.py install –user
External Modules
PackageDNA uses external modules for its analysis that you should install previously:
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
After installation, you should configure the external modules, in the option [7] Configuration of the main menu.
[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
NOTE: External modules are not mandatory. PackageDNA will continue its execution, however, we recommend making all the configurations of these modules so that the tool performs a complete analysis
Use
Copyright (c) 2020 private
Source: https://github.com/Telefonica/