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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/dockersecurityplayground/dsp
Container SecuritySecurity VirtualizationNetwork SecurityPenetration TestingLearning & EducationLabs & Practice
GitHubdockersecurityplayground/dsp

DSP

네트워크 보안 및 침투 테스트 기술 연구를 위한 마이크로서비스 기반 프레임워크

저장소 보기
6321185개월 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
웹사이트

DockerSecurityPlayground

All Contributors

Docker Security Playground는 다음을 할 수 있는 애플리케이션입니다:

  • 네트워크 프로토콜, 규칙 및 보안 문제를 이해하기 위해 네트워크 및 네트워크 보안 시나리오를 PC에 DSP를 설치하여 생성할 수 있습니다.
  • 취약점 실습 시나리오를 시뮬레이션하여 침투 테스트 기술을 학습할 수 있습니다.
  • docker-compose 프로젝트 집합을 관리할 수 있습니다. DSP의 주요 목표는 침투 테스트 및 네트워크 보안을 학습하는 것이지만, 유연성 덕분에 모든 docker-compose 실습의 생성, 그래픽 편집 및 실행/중지 관리가 가능합니다.

설치

DSP의 권장 설치 방법은 Kali VM을 사용하는 것입니다:

  • docker 및 docker-compose 설치
  • 최신 안정 버전의 nodejs 설치
  • dsp 설치

다음은 Kali VM에 DSP를 설치하는 단계입니다. 다른 Linux 배포판의 경우 유사한 단계를 따르되 모든 요구 사항을 설치했는지 확인하세요.

  1. DSP 요구 사항 설치:
root@kitploit:~
sudo apt update && sudo apt install -y docker.io docker-compose nodejs npm git

참고 (2025 Kali 키링 문제).

설치 중 다음 문제가 발생하는 경우:

root@kitploit:~
Fetched 34.0 kB in 1s (58.4 kB/s)
Warning: Failed to fetch http://http.kali.org/kali/dists/kali-rolling/InRelease  The following signatures couldn't be verified because the public key is not available: NO_PUBKEY ED65462EC8D5E4C5
Warning: Some index files failed to download. They have been ignored, or old ones used instead.

누락된 키를 추가해야 합니다:

root@kitploit:~
wget https://http.kali.org/kali/pool/main/k/kali-archive-keyring/kali-archive-keyring_2025.1_all.deb
sudo dpkg -i kali-archive-keyring_2025.1_all.deb
rm kali-archive-keyring_2025.1_all.deb
  1. 부팅 시 docker가 시작되도록 설정하고 현재 사용자가 sudo 없이 docker를 사용할 수 있도록 구성:
root@kitploit:~
sudo systemctl enable docker
sudo groupadd docker
sudo usermod -aG docker $USER
  1. 로그아웃 후 다시 로그인합니다 (현재 사용자가 sudo 없이 docker를 사용할 수 있도록 필요). 그런 다음 sudo 없이 docker를 사용할 수 있는지 확인:
root@kitploit:~
docker ps

또한 docker compose가 작동하는지 확인:

root@kitploit:~
docker compose --version # 또는 구형 버전에서는 docker-compose --version

npm 및 nodejs 설치도 확인:

root@kitploit:~
node -v
npm -v

macOS M1 사용자 참고 사항

Rosetta를 활성화하여 호스트 M1에서 DSP를 실행할 수 있지만, UTM 또는 Vmware Fusion으로 Kali VM을 만들고 이전 설치 단계를 따른 후, ARM 아키텍처에서 x86 이미지를 실행하기 위해 binfmt-misc 패키지를 설치하는 것을 강력히 권장합니다.

root@kitploit:~
sudo apt install binfmt-support qemu-user-static

기기를 재시작합니다.

그런 다음, Tonisiigi 컨테이너를 사용하여 다양한 아키텍처에 대한 모든 인터프리터를 등록합니다:

root@kitploit:~
docker run --privileged --rm tonistiigi/binfmt --install amd64

docker 이미지가 기기에서 실행될 수 있는지 확인:

root@kitploit:~
docker run --rm -it --platform linux/amd64 ubuntu uname -m
  1. 이제 DSP를 설치할 수 있습니다:
root@kitploit:~
git clone https://github.com/DockerSecurityPlayground/DSP.git 
cd DSP 
npm install 

설치가 완료되면 DSP를 시작합니다:

root@kitploit:~
npm start

DSP는 "http://localhost:18181"에서 실행됩니다.

Kali에서 Wireshark 사용 시 참고: Chromium 브라우저를 사용하는 것이 좋습니다. Wireshark 컨테이너가 Kali의 Firefox에서 지원되지 않는 코덱을 사용하기 때문입니다. 터미널에 "chromium"을 입력하면 Chromium을 시작할 수 있습니다.

첫 번째 단계는 현재 시스템에 필요한 모든 폴더를 설치하는 것입니다.

환경 변수를 사용하여 이 설치 단계를 자동화할 수도 있습니다:

root@kitploit:~
export DSP_AUTOINSTALL=1  && npm start

가상 머신에서 DSP 실행 - 0.0.0.0 인터페이스에 노출

호스트 브라우저를 사용하려면 0.0.0.0 인터페이스에 노출할 수 있습니다. 다른 인터페이스에 노출하려면 DSP_IFACE 환경 변수를 변경하세요:

root@kitploit:~
export DSP_IFACE="0.0.0.0"

이제 원격 인터페이스에서 dsp를 사용할 수 있습니다.

DSP 정리

문제가 발생하면 다음 명령으로 DSP를 공장 초기화할 수 있습니다:

root@kitploit:~
npm run uninstall

이렇게 하면 모든 것이 삭제되며, 설치 단계부터 DSP를 다시 시작할 수 있습니다.

공식 저장소

DSP_Repo에는 공식 DSP 실습이 포함되어 있습니다. 새로운 DSP 실습을 만들어 DSP에 기여하세요.

내 실습을 세상과 공유하려면 어떻게 해야 하나요?

설치 중에 git과 연결되지 않은 로컬 환경을 만들거나 개인 저장소를 애플리케이션에 연결할 수 있습니다. 이는 작업을 다른 사람과 공유하려는 경우 매우 유용합니다. DSP 저장소는 여러 요구 사항을 충족해야 하므로, 개인 저장소를 만드는 데 사용할 수 있는 기본 DSP Repo 템플릿을 만들었습니다. 따라서 실습을 공유하는 가장 쉬운 방법은 다음과 같습니다:

  1. NS-Unina 프로젝트 포크: https://github.com/NS-unina/DSP_Repo.git
  2. 설치 중 github 디렉터리 매개변수를 포크한 저장소로 설정합니다.
  3. 이제 실습을 만들고 공유하세요!

사용하는 모든 이미지는 다른 사용자가 사용할 수 있어야 하므로:

  • Docker Hub에 게시하여 다른 사용자가 실습을 사용하기 위해 이미지를 pull할 수 있습니다.
  • .docker-images 디렉터리 내에 dockerfile을 제공하여 사용자가 build.sh를 사용하여 이미지를 빌드하고 저장소를 사용할 수 있습니다.

"비공개 방식"으로 실습을 공유해야 하는 경우 다른 방법으로 저장소를 공유해야 합니다. 현재 비공개 저장소 공유는 지원되지 않습니다.

DSP에서 여러 사용자 저장소를 관리할 수 있습니다 (저장소 탭).

DSP 기능

  • docker-compose의 그래픽 편집기
  • Docker 이미지 및 Dockerfile 관리
  • GIT 통합
  • 네트워크 보안 시나리오 집합을 포함한 DSP 저장소

질문이 있나요?

문제가 있는 경우 Issue 섹션을 사용하세요.

테스트

테스트 실행:

root@kitploit:~
mocha test/<test-nodejs-file.js>

테스트는 helper.start() 메서드를 사용하여 테스트 환경을 초기화합니다:

  • 테스트 구성이 생성됩니다.
  • homedir 디렉터리가 모킹되어 테스트에 내부 dsp 디렉터리를 사용할 수 있습니다.

문제 해결

DSP 설치 중

설치 중 다음 오류가 발생하는 경우:

root@kitploit:~
[2020-12-14T10:18:21.854Z]  INFO: DockerSecurityPlayground/1536 on vagrant: [DOCKER ACTIONS - DOWNLOAD IMAGE]
events.js:174
      throw er; // Unhandled 'error' event
      ^

Error: connect EACCES /var/run/docker.sock
    at PipeConnectWrap.afterConnect [as oncomplete] (net.js:1107:14)
Emitted 'error' event at:
    at Socket.socketErrorListener (_http_client.js:401:9)
    at Socket.emit (events.js:198:13)
    at emitErrorNT (internal/streams/destroy.js:91:8)
    at emitErrorAndCloseNT (internal/streams/destroy.js:59:3)
    at process._tickCallback (internal/process/next_tick.js:63:19)

두 가지를 확인하세요:

  1. docker가 설치되어 있는지
  2. 현재 사용자가 docker 그룹에 속해 있는지

테스트:

root@kitploit:~
docker ps

일반 사용자로 DSP를 실행하는 경우 sudo를 사용하지 마세요. 다음 오류가 발생하는 경우:

root@kitploit:~
vagrant@vagrant:~/git/DockerSecurityPlayground$ docker ps
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json: dial unix /var/run/docker.sock: connect: permission denied

docker 그룹에 사용자를 추가해야 합니다: https://docs.docker.com/engine/install/linux-postinstall/

root@kitploit:~
$ sudo groupadd docker
$ sudo usermod -aG docker $USER

로그아웃 후 다시 로그인합니다. 이제 DSP를 정리해야 합니다:

root@kitploit:~
npm run uninstall

그러면 모든 것이 정상적으로 작동할 것입니다.

MacOS 오류

MacOS ECONNRESET 오류:

root@kitploit:~
events.js:183
      throw er; // Unhandled 'error' event
      ^

Error: read ECONNRESET
    at _errnoException (util.js:992:11)
    at TCP.onread (net.js:618:25)

Mac에서는 일부 노드 패키지에 문제가 있는 것으로 보입니다. 이를 해결하려면 다음을 실행하세요:

root@kitploit:~
MacBook-Pro:DockerSecurityPlayground gaetanoperrone$ npm install [email protected] --save-dev --save-exact

기타 정보: http://gitlab.comics.unina.it/NS-Thesis/DockerSecurityPlayground_1/wikis/docker-operation-errors

기여

  1. 포크하세요!
  2. 기능 브랜치를 만드세요: git checkout -b my-new-feature
  3. 변경 사항을 커밋하세요: git commit -am 'Add some feature'
  4. 브랜치에 푸시하세요: git push origin my-new-feature
  5. 풀 리퀘스트를 제출하세요. 확인하겠습니다.

질문이 있나요?

Issues 를 사용하여 원하는 모든 것을 물어보세요!

링크

  • Arsenal
  • https://github.com/NS-unina/DSP_Repo.git : 나폴리 페데리코 2세 대학교 Simon Pietro Romano의 네트워크 보안 과정을 위해 생성된 저장소

기여자

로고 디자인에 기여한 Giuseppe Criscuolo와 Alessandro Placido Luise에게 감사드립니다.

변경 로그

모든 버전 변경 사항은 CHANGELOG.md에서 확인하세요.

이 작업 인용

연구 활동에 Docker Security Playground를 사용하는 경우, IEEE(전기전자공학자협회)에서 발행한 다음 논문을 인용하세요: https://ieeexplore.ieee.org/document/8169747

root@kitploit:~
@INPROCEEDINGS{8169747,
  author={Perrone, G. and Romano, S. P.},
  booktitle={2017 Principles, Systems and Applications of IP Telecommunications (IPTComm)}, 
  title={The Docker Security Playground: A hands-on approach to the study of network security}, 
  year={2017},
  volume={},
  number={},
  pages={1-8},
  keywords={Security;Communication networks;Tools;Containers;Virtualization;Standards},
  doi={10.1109/IPTCOMM.2017.8169747}}

라이선스

이 프로젝트는 MIT 라이선스를 따릅니다.

도구 다운로드

gx1

🐛 💻 🖋 🎨 📖 🚧 📆

Simon Pietro Romano

🎨 📖 📆

catuhub

🐛 💻 🎨 📖 🚧 📆

Giuseppe Di Terlizzi

💻

Alessandro

📖 📹 🖋

Roberto

💻 🖋 🚇

the-licato

🚇

Gabriele Previtera

💻 📢