
DBC2 (DropboxC2)는 피해자 머신에서 실행되는 에이전트, 모든 머신에서 실행되는 컨트롤러, PowerShell 모듈, 그리고 통신 수단으로 사용되는 Dropbox 서버로 구성된 모듈식 사후 침투 도구입니다.
최신/현재 버전: 0.2.6
작성자: Arno0x0x - @Arno0x0x
DBC2(DropboxC2)는 모듈식 사후 침투(post-exploitation) 도구로, 피해자의 머신에서 실행되는 에이전트(agent), 모든 머신에서 실행되는 컨트롤러(controller), PowerShell 모듈, 그리고 통신 수단으로서의 Dropbox 서버로 구성됩니다.
이 프로젝트는 처음에 훌륭한 Empire 프레임워크에서 영감을 받았으며, 동시에 Python을 배우기 위한 목적도 있었습니다.
기본 기능(v0.0.1)에 대한 소개와 데모를 확인해 보세요:

이 애플리케이션은 GPLv3 라이선스 조건에 따라 배포됩니다.

DBC2 주요 기능:
(w|c)script.exe 내에서 실행 가능DBC2는 API 호출을 수행하기 위해 Dropbox 계정 내에 Dropbox 애플리케이션("App folder"만으로 충분)이 생성되어 있어야 하며, 이 애플리케이션에 대한 액세스 토큰이 생성되어 있어야 합니다. 방법을 잘 모르겠다면 소개 영상을 참고하세요.
컨트롤러 측에서 DBC2는 다음을 요구합니다:
pip install -r requirements.txt로 설치할 수 있습니다:
DBC2 컨트롤러는 Linux Kali와 Mac OSX에서 성공적으로 테스트 및 사용되었습니다.
에이전트 측에서 DBC2는 다음을 요구합니다:
DBC2 컨트롤러는 시작할 때 마스터 암호를 요구합니다. 이 암호는 pyscrypt 라이브러리의 PBKDF 함수를 사용하여 128비트 마스터 키로 파생됩니다. 그런 다음 마스터 키는 base64로 인코딩되며 (선택적으로) 구성 파일에 저장할 수 있습니다.
DBC2는 AES-128/CBC 모드의 마스터 키를 사용하여 데이터에 대한 종단 간(end-to-end) 암호화를 수행합니다. 에이전트와 컨트롤러 간에 교환되는 데이터는 Dropbox 서버를 통해 전송되므로, HTTPS 덕분에 전송 자체는 암호화되지만, Dropbox 서버에 저장되는 동안 데이터를 보호하기 위해 데이터는 종단 간 암호화되어야 합니다.
DBC2는 또한 XOR 암호화를 사용하여 스테이지와 모듈을 난독화합니다. XOR 암호화는 단순한 암호화 방식이지만, 잘 알려지고 공개적으로 이용 가능한 일부 코드를 단순히 난독화하기에는 충분합니다. XOR 암호화에 사용되는 키는 마스터 키의 SHA256 해시입니다.
설치는 아주 간단합니다:
git clone https://github.com/Arno0x/DBC2 dbc2cd dbc2pip install -r requirements.txt를 사용하여 요구 사항을 설치합니다chmod +x dropboxC2.py컨트롤러를 시작하려면 ./dropboxC2.py를 입력하기만 하면 됩니다.
구성은 config.py 파일을 통해 수행됩니다:
DBC2는 Docker 컨테이너로도 제공됩니다:
Docker hub의 DBC2를 확인하세요.
또는 간단히 다음을 실행하세요: docker pull arno0x0x/dbc2
제공된 소스 코드에서 에이전트 스테이지의 자체 실행 파일을 아주 쉽게 컴파일할 수 있습니다. Visual Studio가 설치되어 있을 필요는 없습니다.
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /out:dbc2_agent.exe *.csC:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /define:DEBUG /out:dbc2_agent_debug.exe *.cs이 도구는 합법적이고 정당한 방식으로만 사용하도록 제작되었습니다:
Empire 작성자들의 말을 인용하자면: 합법적인 정보 보안 업계에 유용한 공격 도구를 만들면서 동시에 악의적인 행위자들이 이를 남용하는 것을 막을 수 있는 방법은 없다.
Arno0x0x - 트위터 페이지(@Arno0x0x)에서 연락할 수 있습니다.
이 도구는 아직 베타 버전이며, Python과 C#으로 개발된 제 첫 프로젝트입니다. 따라서 버그가 가득할 가능성이 크고, 가장 Pythonic하거나 C#다운 방식으로 작성되지 않았을 수 있습니다. 이 도구에 대한 피드백을 받는 대로 시간이 지나면서 버그 수정과 개선이 이루어질 것입니다.
다음 릴리스에 추가될 예정:
수정 예정: