처리중입니다. 잠시만 기다려주세요.
TTJ 코딩클래스
정규반 단과 자료실 테크 뉴스 코딩 퀴즈
테크 뉴스
GitHub 2026.04.27 24

[심층분석] 보안 연구자의 만능 칼? 'hackingtool' v2.0이 가져온 변화와 우리가 알아야 할 것들

GitHub 원문 보기
[심층분석] 보안 연구자의 만능 칼? 'hackingtool' v2.0이 가져온 변화와 우리가 알아야 할 것들

들어가며: 왜 지금 'hackingtool'을 다시 봐야 할까요?

혹시 '해킹툴'이라는 단어를 들으면 어떤 이미지가 떠오르세요? 영화에서 후드 뒤집어쓴 사람이 검은 화면에 초록색 글씨로 뭔가를 두드리는 장면? 아니면 어둠의 경로에서 받은 수상한 프로그램? 사실 보안 업계에서 '해킹툴'이라는 건 그렇게 음침한 게 아니에요. 모의해킹(Penetration Testing, 줄여서 펜테스트), 그러니까 '우리 회사 시스템에 진짜 뚫리는 구멍이 있는지 일부러 공격해보는 일'을 할 때 쓰는 정식 도구거든요.

그런데 이 분야에서 일해본 분들은 다 아실 거예요. 도구가 너무 많아요. 정찰용(Reconnaissance) 도구 따로, SQL 인젝션 테스트 도구 따로, 와이파이 점검 도구 따로, 피싱 시뮬레이션 도구 따로... 한 번 환경 세팅하려면 반나절은 그냥 날아가요. 그래서 칼리 리눅스(Kali Linux) 같은 '도구 다 깔려있는 OS'가 인기였던 거고요.

오늘 살펴볼 Z4nzu/hackingtool은 이 고민에서 출발한 프로젝트예요. 이름 그대로 "하나로 다 되는 해킹 도구"를 표방하는데, 최근 v2.0.0이 나오면서 완전히 다른 물건이 됐어요. Python 2 코드를 싹 걷어내고, 185개가 넘는 도구를 카테고리별로 정리하고, 검색이랑 추천 기능까지 넣었거든요. 보안에 관심 있는 주니어 개발자라면 한 번쯤 들여다볼 만한 변화라서, 오늘 이걸 좀 깊게 파보려고 해요.

이게 정확히 뭐 하는 물건인가요?

쉽게 말하면 '보안 도구 통합 런처'예요. 비유하자면 스팀(Steam) 같은 거죠. 게임을 직접 만드는 게 아니라, 여기저기 흩어진 게임을 한 곳에서 검색하고, 설치하고, 실행할 수 있게 해주는 플랫폼. hackingtool도 똑같아요. 자기가 직접 취약점을 분석하는 코드를 짜는 게 아니라, 이미 세상에 나와 있는 유명한 보안 도구들(예: Nmap, sqlmap, Aircrack-ng 같은 것들)을 한 메뉴 안에서 쉽게 깔고 쓸 수 있게 묶어준 거예요.

구조를 보면 이렇게 돼요.

  • hackingtool.py — 메인 실행 파일. 사용자가 보는 메뉴 화면을 띄워줘요.
  • tools/ — 카테고리별 도구 정의가 들어있는 폴더
  • core.py — 각 도구가 어떻게 설치되고 실행되는지 공통 로직
  • install.sh — 한 줄로 설치할 수 있게 해주는 셸 스크립트
  • Dockerfile — 도커 환경에서 격리해서 돌릴 수 있게 해주는 설정
  • 사용 흐름은 더 단순해요. 터미널에서 hackingtool이라고 치면 메뉴가 뜨고, 카테고리 고르고, 도구 고르고, 설치 누르고, 실행 누르면 끝. CLI(Command Line Interface, 명령줄 인터페이스) 기반의 위저드(Wizard)라고 보면 돼요. 위저드라는 건 윈도우 설치할 때 "다음, 다음, 다음" 누르는 그런 단계별 안내 방식을 말해요.

    v2.0에서 뭐가 바뀌었나요?

    이번 업데이트의 핵심을 하나씩 풀어볼게요.

    1) Python 3.10+ 전면 전환

    이게 생각보다 큰 일이에요. Python 2는 2020년에 공식 지원이 끝났는데도, 보안 도구 생태계에는 아직도 Python 2로 짠 코드들이 많이 남아있거든요. 왜냐하면 옛날 도구들은 다 Python 2 시절에 만들어졌고, 그걸 마이그레이션(이전)할 인력이나 시간이 부족했어요. hackingtool이 v2.0에서 "Python 2 코드는 다 지웠다"고 선언한 건, 사실상 "우리는 모던 코드베이스로 다시 태어났다"라는 메시지예요.

    주니어분들 입장에서 이게 왜 중요하냐면, Python 2 코드는 print 문법부터 다르고, 문자열 처리 방식도 달라서 한 번 꼬이면 정말 골치 아파요. f-string도 못 쓰고, async/await도 제한적이고요. 모던 Python으로 통일됐다는 건 코드 읽고 기여하기가 훨씬 쉬워졌다는 뜻이에요.

    2) OS 인지(OS-aware) 메뉴

    맥OS에서 돌리면 리눅스 전용 도구는 메뉴에 안 보이게 숨겨줘요. 별것 아닌 것 같지만, 이게 사용자 경험에서 엄청 큰 차이를 만들어요. 예전엔 도구 100개 다 보여주고 "근데 너 OS에선 안 돌아가" 하고 에러 띄우는 식이었거든요. 지금은 깔끔하게 "네가 쓸 수 있는 것만" 보여줘요.

    3) 검색(/)과 태그 필터(t)

    VS Code나 vim 써보신 분들이라면 익숙하실 거예요. /를 누르면 검색 모드, t를 누르면 태그 필터 모드로 들어가요. 19개 태그(osint, web, c2, cloud, mobile 등)로 필터링이 가능해요.

    여기서 잠깐, 용어 풀이 들어갈게요.

  • OSINT: Open Source Intelligence. 공개된 정보(SNS, 도메인 정보, 공공 DB 등)를 모아서 분석하는 기법이에요.
  • C2: Command and Control. 공격자가 침투한 시스템에 명령을 내리는 채널을 말해요. 모의해킹 시 "우리가 침투에 성공했다고 가정하고 어떻게 통제권을 유지할 수 있는지" 테스트할 때 써요.
  • 4) 추천 모드(r)

    이게 좀 신박해요. r을 누르고 "네트워크를 스캔하고 싶어"라고 자연어로 입력하면 관련 도구들을 추천해줘요. 마치 챗봇처럼요. 물론 LLM이 백엔드에 붙어있는 건 아니고, 키워드 매칭 기반일 가능성이 높아요. 그래도 초보자한테는 "내가 뭘 써야 할지 모르겠을 때" 길잡이 역할을 해줘요.

    5) 설치 상태 표시(✔/✘)와 일괄 설치

    도구 옆에 체크 마크가 붙어 있어서 "이건 이미 깔렸다", "이건 아직 안 깔렸다"가 한눈에 보여요. 그리고 카테고리 안에서 97을 누르면 그 카테고리 도구를 한꺼번에 다 깔아줘요. 환경 세팅 시간을 정말 많이 줄여줘요.

    6) 스마트 업데이트

    각 도구마다 업데이트 방식이 달라요. 어떤 건 git pull, 어떤 건 pip upgrade, 어떤 건 go install로 받아야 하거든요. v2.0은 도구 종류를 자동으로 판단해서 적절한 명령을 실행해줘요. 이게 별것 아닌 것 같지만, 보안 도구는 빠르게 업데이트되기 때문에 "항상 최신 버전을 유지하는 것"이 정말 중요해요. 옛날 버전으로 점검하면 최신 취약점은 못 잡거든요.

    7) 도커(Docker) 로컬 빌드

    이게 개인적으로 제일 마음에 드는 변화예요. 예전엔 외부에서 만든 도커 이미지를 가져다 쓰는 경우가 많았는데, 보안 도구를 "검증되지 않은 외부 이미지"로 받는 건 그 자체로 위험해요. 이번 버전은 로컬에서 직접 빌드하도록 바꿨어요. 공급망 공격(Supply Chain Attack) 위험을 줄이는 좋은 결정이에요.

    카테고리 구성으로 보는 보안 분야의 지도

    hackingtool은 도구를 17개 카테고리로 나눠놨는데, 이게 사실 모의해킹의 큰 흐름을 그대로 보여주는 지도예요. 보안 입문자가 "내가 어디부터 공부해야 하지?" 할 때 좋은 참고가 돼요.

    1. 익명화(Anonymously Hiding) — Tor, VPN 같은 익명성 확보 도구
    2. 정보 수집(Information Gathering) — 26개 도구. 가장 큰 카테고리예요. 공격은 정찰부터 시작하니까요.
    3. 워드리스트 생성(Wordlist Generator) — 패스워드 추측에 쓸 사전 만들기
    4. 무선 공격(Wireless Attack) — 와이파이 보안 점검
    5. SQL 인젝션 — DB 공격 시뮬레이션
    6. 피싱(Phishing) — 17개. 사회공학 시뮬레이션
    7. 웹 공격(Web Attack) — 20개. OWASP Top 10 관련
    8. 포스트 익스플로잇(Post Exploitation) — 침투 후 권한 상승
    9. ~ 17. 익스플로잇 프레임워크, 리버스 엔지니어링, DDoS, RAT, XSS, 스테가노그래피, 액티브 디렉터리, 클라우드 보안, 모바일 보안

    특히 v2.0에서 액티브 디렉터리(Active Directory), 클라우드 보안, 모바일 보안 카테고리가 새로 들어왔어요. 이게 트렌드를 정확히 반영해요. 요즘 기업 침해 사고의 대부분은 클라우드 설정 실수나 AD 권한 문제에서 시작되거든요.

    비슷한 도구들과 비교해 보면

    이런 통합 도구가 hackingtool만 있는 건 아니에요. 비교해볼게요.

  • Kali Linux: 아예 OS 자체가 보안 도구 모음이에요. 가장 정통이고 무거워요. "풀 코스 정찬" 같은 느낌.
  • Parrot OS: Kali랑 비슷한데 좀 더 가볍고 프라이버시 중심.
  • Metasploit Framework: 하나의 거대한 익스플로잇 프레임워크. "공격 자체를 모듈화"한 도구.
  • hackingtool: 위 도구들을 "실행시켜주는 런처". 가장 가볍고 진입장벽이 낮아요.
  • 비유하자면 Kali가 풀옵션 데스크톱 PC라면, hackingtool은 노트북에 깔아 쓰는 앱스토어 같은 거예요. 어느 게 더 좋다기보단 용도가 달라요. 보안을 깊게 파고들 거면 Kali로 가야 하고, "여러 도구를 빠르게 둘러보고 싶다" 하면 hackingtool이 편해요.

    한국 개발자에게 주는 시사점

    1) 보안은 더 이상 보안팀만의 일이 아니에요

    예전엔 "개발은 개발팀, 보안은 보안팀" 이렇게 나뉘었지만, 요즘은 DevSecOps(개발+보안+운영 통합) 흐름이 강해요. 주니어 개발자도 자기가 짠 코드에 SQL 인젝션이나 XSS 취약점이 있는지 정도는 직접 점검할 줄 알아야 해요. hackingtool 같은 도구를 "공격용"이 아니라 "내 코드 점검용"으로 써보는 게 좋아요.

    구체적인 시나리오를 들어볼게요. 사이드 프로젝트로 만든 웹앱에 로그인 기능을 붙였다고 해봐요. 이걸 배포하기 전에 hackingtool에서 SQL Injection 카테고리 도구(예: sqlmap)로 한 번 돌려보면, 내가 미처 못 막은 입력값이 어디 있는지 바로 보여요. 5분 투자로 사고 한 번 막을 수 있는 거죠.

    2) 법적 경계선을 꼭 지키세요

    이건 진짜 중요해요. 한국에선 정보통신망법에 따라 권한 없이 타인의 시스템을 점검하는 건 그 자체로 불법이에요. "호기심에 친구네 회사 사이트 한 번 찔러봤다"가 형사 처벌로 이어질 수 있어요. hackingtool에 들어있는 도구들은 반드시 본인이 권한을 가진 시스템(자기 서버, 회사에서 명시적으로 허락한 환경, CTF 챌린지, HackTheBox 같은 학습용 플랫폼)에서만 써야 해요.

    학습용 환경 추천드려요.

  • DVWA(Damn Vulnerable Web Application) — 일부러 취약하게 만든 웹앱
  • HackTheBox, TryHackMe — 합법 학습 플랫폼
  • CTF 대회 — 한국에서도 KISA, 화이트햇 콘테스트 등 다수

3) 학습 로드맵 제안

주니어 개발자가 보안에 입문한다면 이런 순서를 추천해요.

1. 네트워크 기초: TCP/IP, HTTP 동작 원리. 이거 모르면 도구 써도 결과 해석을 못 해요.
2. OWASP Top 10: 웹 취약점의 표준 분류. 한 달이면 다 읽어요.
3. 정보 수집 도구 실습: Nmap, Whois 같은 거. hackingtool의 Information Gathering 카테고리로 시작하면 편해요.
4. CTF 풀어보기: 실전 감각 익히기.
5. 자격증: 좀 더 깊게 가고 싶다면 OSCP, CEH 같은 공인 자격증.

마무리: 도구는 결국 사용자의 의도를 따라가요

hackingtool v2.0의 등장은 단순한 도구 업데이트가 아니에요. 보안 학습의 진입 장벽이 또 한 단계 낮아졌다는 신호예요. 예전엔 도구 깔다가 포기하는 사람이 많았는데, 이제는 메뉴에서 클릭 몇 번이면 환경이 만들어져요. 좋은 일인 동시에, 양날의 검이기도 해요. 악의적으로 쓰려는 사람도 진입이 쉬워졌으니까요.

그래서 더더욱 "방어자가 공격을 더 잘 알아야 한다"는 명제가 중요해져요. 우리가 짠 코드를 누가 어떻게 공격할지 모르면, 막을 수도 없어요. 이런 도구를 "공격자의 시선으로 내 시스템을 보는 연습"으로 활용하셨으면 좋겠어요.

여러분께 묻고 싶어요. 자기가 만든 서비스에 보안 점검을 한 번이라도 직접 해본 경험 있으세요? 어떤 도구를 써봤고, 어떤 취약점을 찾아서 어떻게 고쳤는지, 댓글로 경험 나눠주시면 좋겠어요. 보안은 결국 같이 배우고 같이 막는 일이거든요.


🔗 출처: GitHub

이 뉴스가 유용했나요?

이 기술을 직접 배워보세요

파이썬으로 자동화를 시작해보세요

파이썬 기초부터 자동화까지 실전 강의.

파이썬 강의 보기

"비전공 직장인인데 반년 만에 수익 파이프라인을 여러 개 만들었습니다"

실제 수강생 후기
  • 비전공자도 6개월이면 첫 수익
  • 20년 경력 개발자 직강
  • 자동화 프로그램 + 소스코드 제공

매일 AI·개발 뉴스를 받아보세요

주요 테크 뉴스를 매일 아침 이메일로 전해드립니다.

스팸 없이, 언제든 구독 취소 가능합니다.