AI 해커가 우리 팀에 들어왔다? 취약점 탐지부터 PoC 검증까지 끝내는 Strix 써본 후기

코드 리뷰 다 했어요. 테스트 코드도 통과했어요. 자신만만하게 배포했는데…

다음 날 Slack에 알림이 뜨죠.

“어… 이거 취약점 있는 것 같은데요?”

저도 이거 몇 번 겪었어요.

솔직히 개발자가 보안까지 다 챙기기 쉽지 않잖아요. 기능 구현하랴, 테스트 코드 짜랴, 코드 리뷰하랴… 보안 전문가 따로 있는 팀이면 모르겠는데, 대부분은 그냥 “될 것 같은데?” 하고 넘어가거든요.

근데 말이죠.

**”진짜 해커처럼 우리 코드를 공격해보고, 취약점 찾으면 PoC(공격 증명)까지 만들어주는 AI”**가 있으면 어떨 것 같아요?

그게 있어요. 진짜로.

GitHub에서 19.6k 스타를 받은 오픈소스 프로젝트, Strix입니다.

AI 해커가 우리 팀에 들어왔다? 취약점 탐지부터 PoC 검증까지 끝내는 Strix 써본 후기

Strix가 뭔데?

Strix… 뭔 소린지 모르겠죠?

쉽게 말할게요.

“AI 해커를 고용해서 우리 앱 공격하게 시키는 것”

끝. 이게 전부예요.

근데 이 AI 해커가 좀 무서워요. 왜냐면 진짜 해커처럼 행동하거든요.

구분기존 보안 스캐너Strix
작동 방식패턴 매칭 (규칙 기반)자율 탐색 (AI 추론)
결과“여기 취약할 수 있음”“여기 취약함 + 이렇게 공격됨”
검증없음 (오탐 많음)PoC 제공 (실제 증명)
탐지 범위알려진 패턴만비즈니스 로직 결함까지

기존 SAST/DAST 도구들은 패턴 매칭 방식이에요. “이런 코드 패턴은 위험할 수 있다”고 경고만 하죠. 근데 진짜 취약한지 아닌지는 개발자가 직접 확인해야 해요.

Strix는 달라요.

직접 공격해보고, 성공하면 “이렇게 뚫렸다”는 증거까지 보여줍니다.

이게 왜 무서운지 아세요?

오탐(False Positive)이 거의 없어요. 왜냐면 실제로 뚫어봤으니까.


어떻게 작동하는 거야?

Strix의 핵심은 “Think-Plan-Act-Observe” 루프예요.

진짜 해커가 공격할 때 하는 사고 과정을 AI가 그대로 따라 해요:

1. Think: "이 앱에서 뭘 공격할 수 있을까?"
   ↓
2. Plan: "인증 우회부터 시도해보자"
   ↓
3. Act: 실제로 공격 시도
   ↓
4. Observe: "어? 이거 뚫리네"
   ↓
(반복)

그리고 이 AI 에이전트한테 진짜 해커 도구들을 다 줘요:

Strix가 가진 무기들

🌐 HTTP 프록시 - 요청/응답 조작
🖥️ 브라우저 자동화 - XSS, CSRF, 인증 흐름 테스트
💻 터미널 셸 - 명령어 실행
🐍 Python 런타임 - 커스텀 익스플로잇 개발
🔍 정찰 도구 - OSINT, 공격 표면 매핑
📊 코드 분석 - 정적/동적 분석

뭔 소린지 모르겠죠? 쉽게 말하면 이거예요.

해커가 쓰는 도구 다 갖고 있고, 그걸 AI가 알아서 조합해서 쓴다.

근데 진짜 웃긴 게요.

이게 멀티 에이전트로 작동해요. 혼자 하는 게 아니라 여러 AI 에이전트가 팀처럼 협력하면서 공격해요.

Manager 에이전트: "IDOR 취약점 찾아봐"
  ↓
Worker 에이전트 1: "포트 스캔 중..."
Worker 에이전트 2: "디렉토리 브루트포싱 중..."
Worker 에이전트 3: "인증 토큰 분석 중..."
  ↓
"발견됨! 사용자 ID 바꾸니까 다른 사람 데이터 접근 가능"

이런 식으로요.


실제로 뭘 잡아내는데?

솔직히 “뭘 못 잡는지” 말하는 게 더 빠를 것 같아요.

Strix가 탐지하는 취약점들

접근 제어 결함:

  • IDOR (권한 없는 객체 접근)
  • 권한 상승
  • 인증 우회

주입 공격:

  • SQL 인젝션
  • NoSQL 인젝션
  • 커맨드 인젝션

서버사이드 취약점:

  • SSRF (서버사이드 요청 위조)
  • XXE (XML 외부 엔티티)
  • 역직렬화 결함

클라이언트사이드 취약점:

  • XSS (크로스 사이트 스크립팅)
  • 프로토타입 오염
  • DOM 취약점

비즈니스 로직 결함:

  • 레이스 컨디션
  • 워크플로우 조작

인증 문제:

  • JWT 취약점
  • 세션 관리 결함

인프라 설정:

  • 미스컨피규레이션
  • 노출된 서비스

여기서 주목할 게 비즈니스 로직 결함이에요.

기존 스캐너들은 이걸 못 잡아요. 왜냐면 패턴이 없거든요. “동시에 결제 버튼 두 번 누르면 한 번만 과금됨” 같은 건 코드만 봐서는 모르잖아요.

근데 Strix는 실제로 동시에 눌러봐요. 그리고 뚫리면 알려줘요.

이게 진짜 무서운 거예요.


설치부터 실행까지

설치 어려울 것 같죠?

아니에요. 진짜 간단해요.

사전 요구사항

✅ Docker 실행 중
✅ LLM API 키 (OpenAI, Anthropic 등)

끝.

설치

# 한 줄 설치
curl -sSL https://strix.ai/install | bash

# 또는 pipx로
pipx install strix-agent

API 키 설정

# OpenAI 사용할 경우
export STRIX_LLM="openai/gpt-5"
export LLM_API_KEY="sk-xxx..."

# Claude 사용할 경우
export STRIX_LLM="anthropic/claude-sonnet-4-5"
export LLM_API_KEY="sk-ant-xxx..."

첫 스캔 실행

# 로컬 코드베이스 스캔
strix --target ./my-app

# GitHub 레포지토리 스캔
strix --target https://github.com/org/repo

# 배포된 웹앱 스캔
strix --target https://your-app.com

처음 실행하면 Docker 이미지 다운받느라 좀 걸려요. 그 다음부터는 바로 시작됩니다.

결과는 strix_runs/<run-name> 폴더에 저장돼요.


고급 사용법

인증된 테스트 (회색 상자 테스트)

strix --target https://your-app.com \
  --instruction "로그인 정보 user:password로 인증된 테스트 수행"

멀티 타겟 (소스코드 + 배포된 앱 동시에)

strix -t https://github.com/org/app -t https://your-app.com

특정 취약점에 집중

strix --target api.your-app.com \
  --instruction "비즈니스 로직 결함과 IDOR에 집중"

자세한 지시사항 파일로 전달

strix --target api.your-app.com \
  --instruction-file ./pentest-scope.md

CI/CD에 통합하기

이게 진짜 핵심이에요.

배포할 때마다 자동으로 보안 테스트를 돌리면, 취약점이 프로덕션에 배포되기 전에 잡힙니다.

GitHub Actions 예시

name: strix-penetration-test

on:
  pull_request:

jobs:
  security-scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6

      - name: Install Strix
        run: curl -sSL https://strix.ai/install | bash

      - name: Run Strix
        env:
          STRIX_LLM: ${{ secrets.STRIX_LLM }}
          LLM_API_KEY: ${{ secrets.LLM_API_KEY }}
        run: strix -n -t ./ --scan-mode quick

-n 플래그는 헤드리스 모드(비대화형)예요. CI/CD에서 돌릴 때 필수.

취약점 발견되면 non-zero exit code로 종료돼서 PR이 자동으로 블록됩니다.

이게 왜 좋냐면요.

“보안 리뷰 해야 하는데 시간이 없어서…”

이 핑계가 사라져요.

AI가 매 PR마다 자동으로 해주니까.


지원하는 LLM 모델

Strix는 **LLM 불가지론적(agnostic)**이에요. 뭔 소린지 모르겠죠?

쉽게 말하면 아무 LLM이나 쓸 수 있다는 거예요.

권장 모델 (최상 결과)

모델설정값
OpenAI GPT-5openai/gpt-5
Anthropic Claude Sonnet 4.5anthropic/claude-sonnet-4-5
Google Gemini 3 Provertex_ai/gemini-3-pro-preview

그 외 지원

  • AWS Bedrock
  • Azure OpenAI
  • 로컬 모델 (Ollama, LMStudio 등)

로컬 모델 쓰면 API 비용 아낄 수 있어요. 근데 성능은… 음. GPT-5나 Claude 쓰는 게 결과가 좋긴 해요.

# 로컬 모델 사용 시
export LLM_API_BASE="http://localhost:11434/v1"  # Ollama 예시
export STRIX_LLM="llama3.1:70b"

솔직한 마음: 이거 쓰면서 느낀 점

솔직히 처음 돌렸을 때 좀 충격받았어요.

“설마 뭐가 나오겠어?” 하고 내 토이 프로젝트에 돌려봤거든요.

IDOR 하나, JWT 검증 누락 하나, 레이스 컨디션 하나.

3개 나왔어요.

그것도 PoC까지.

“이 API에 이 토큰으로 요청 보내면 다른 사용자 데이터 접근 가능” 이런 식으로요.

솔직히 좀 무서웠습니다.

내가 직접 짠 코드인데, 내가 모르는 취약점이 있었다는 거잖아요.

근데 다르게 생각하면 이거예요.

내가 프로덕션에 배포하기 전에 알았으니까 다행이지.

실제 해커가 먼저 발견했으면? 생각하기도 싫어요.

아쉬운 점도 있어요

  1. LLM 비용: 꽤 많이 나와요. 복잡한 앱 스캔하면 API 호출이 수백 번 나가거든요.
  2. 알파 버전: 아직 v0.7.0이에요. 가끔 이상하게 동작할 때 있어요. 빠르게 업데이트되고 있긴 한데, 프로덕션 파이프라인에 넣기 전에 충분히 테스트하세요.
  3. 오래 걸림: “빠르다”고 하는데, 그건 수동 펜테스팅 대비예요. 복잡한 앱은 몇 시간 걸릴 수 있어요.

내가 앞으로 할 것들

  1. 사이드 프로젝트 배포 전 Strix 돌리기: 습관화할 거예요. 5분 투자해서 취약점 미리 잡으면 이득이잖아요.
  2. GitHub Actions에 통합: 팀 프로젝트에 PR 체크로 넣을 생각이에요. quick 모드로 빠르게 체크하고, 주 1회는 full 스캔.
  3. 로컬 모델 테스트: API 비용 줄이려고 Ollama로 돌려볼 예정이에요. 성능 차이 얼마나 나는지 비교해볼게요.

마무리: 이거 꼭 써봐야 하는 이유

정리할게요.

Strix는 “AI 펜테스터”예요.

  • 진짜 해커처럼 앱을 공격해봐요
  • 취약점 찾으면 PoC까지 만들어줘요
  • 오탐이 거의 없어요 (진짜 뚫린 거만 리포트)
  • 오픈소스고 무료예요
  • CI/CD에 통합하면 자동화 가능

보안 전문가 없는 팀에서 특히 유용해요.

“우리도 펜테스팅 받아보고 싶은데, 비용이…” 하는 팀 있잖아요?

이제 핑계 없어요.

무료 오픈소스니까요.

⚠️ 주의: 본인 소유거나 테스트 허가받은 앱에만 사용하세요. 무단으로 남의 앱 스캔하면 불법이에요.


참고 자료


FAQ

Q: 무료인가요?

A: 네, Apache 2.0 라이선스 오픈소스예요. 단, LLM API 비용은 별도입니다.

Q: 어떤 언어/프레임워크 지원하나요?

A: 언어 불문이에요. 웹앱이면 다 됩니다. API, 정적 사이트, SPA 다 가능.

Q: 로컬에서만 돌릴 수 있나요?

A: 아니요. GitHub 레포지토리 URL 주면 직접 클론해서 분석하고, 배포된 URL 주면 블랙박스 테스트도 해요.

Q: 발견된 취약점 어떻게 수정하나요?

A: 리포트에 취약점 설명과 권장 수정 방법이 같이 나와요. 그대로 따라하면 됩니다.

Q: CI/CD에서 타임아웃 나면?

A: --scan-mode quick으로 빠른 스캔 모드 쓰세요. 전체 스캔은 야간 크론잡으로 돌리는 게 좋아요.

Q: 프라이빗 레포지토리도 되나요?

A: 네. GitHub 토큰 설정하거나, 로컬에 클론한 후 --target ./ 하면 됩니다.


🏷️ 태그: #Strix #AI보안 #펜테스팅 #취약점스캐너 #DevSecOps #오픈소스 #보안자동화