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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
sec-af — AgentField에서 실행되는 AI 네이티브 코드 보안 감사 도구로, 판정, 추적 기록, 조치 가능한 증거를 통해 악용 가능성을 입증합니다. | Kitploit
도구/GitHubGitHub/agent-field/sec-af
Static AnalysisVulnerability ScannersCode AnalysisExploitationWeb SecurityPenetration TestingDevSecOpsSecret DetectionSupply Chain SecurityAI Security
GitHubagent-field/sec-af
19441181개월 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →

sec-af

AgentField에서 실행되는 AI 네이티브 코드 보안 감사 도구로, 판정, 추적 기록, 조치 가능한 증거를 통해 악용 가능성을 입증합니다.

저장소 보기웹사이트
공유

SEC-AF

AgentField 기반 AI 네이티브 보안 감사 도구

Apache 2.0 Python Built with AgentField Deploy on Railway More from Agent-Field

결과물 • 벤치마크 • 작동 방식 • 비교 • 빠른 시작 • API

다른 도구들은 패턴을 탐지합니다. SEC-AF는 악용 가능성을 증명합니다: 모든 발견 사항에는 판정, 데이터 흐름 추적, 그리고 실행 가능한 증거가 포함됩니다. 무료, 오픈소스, API 호출 한 번으로 충분합니다. 검증된 30건의 발견 사항을 포함한 전체 감사 비용은 LLM 호출 기준 약 $1.40입니다.

SEC-AF — AI 네이티브 보안 감사 도구

원클릭 개발자 경험

af CLI(af ≥ 0.1.87 필요)로 실행하세요 — 실시간 진행 상황을 스트리밍하고 결과를 출력합니다:```bash af call sec-af.audit --in '{"repo_url": "https://github.com/dolevf/Damn-Vulnerable-GraphQL-Application"}'

raw HTTP를 선호하시나요? curl로 API를 직접 호출하세요:```bash
curl -X POST http://localhost:8080/api/v1/execute/async/sec-af.audit \
  -H "Content-Type: application/json" \
  -d '{"input": {"repo_url": "https://github.com/dolevf/Damn-Vulnerable-GraphQL-Application"}}'

받게 되는 결과

이는 SEC-AF가 DVGA (의도적으로 취약하게 만든 GraphQL 애플리케이션)를 감사하면서 확인한 실제 발견 사항입니다:```jsonc { "title": "OS Command Injection in run_cmd Helper Function", "severity": "critical", "verdict": "confirmed", // not "maybe" — confirmed exploitable "evidence_level": 5, "cwe_id": "CWE-78",

"rationale": "Tracer confirms complete data flow from GraphQL parameters (host, port, path, scheme, cmd, arg) to os.popen(cmd).read() sink. Sanitization functions are bypassable in Easy mode...",

"proof": { "verification_method": "composite_subagent_chain:sast", "data_flow_trace": [ { "description": "core/views.py:203 — GraphQL args defined (host, port, path, scheme)", "tainted": true }, { "description": "core/views.py:210 — URL constructed from user input", "tainted": true }, { "description": "core/views.py:211 — helpers.run_cmd(f'curl {url}') called", "tainted": true }, { "description": "core/helpers.py:9 — os.popen(cmd).read() executes input", "tainted": true } ] },

"location": { "file_path": "core/helpers.py", "start_line": 9, "code_snippet": "def run_cmd(cmd):\n return os.popen(cmd).read()" } }

모든 결과에는 **판정(verdict)**(`confirmed` / `likely` / `inconclusive` / `not_exploitable`), 전체 taint trace를 포함한 **증명 객체(proof object)**, 그리고 정확한 코드 위치가 포함됩니다. "문제일 수도 있습니다" 수준이 아닙니다. SEC-AF는 데이터를 source부터 sink까지 추적하고 실제로 악용 가능한지 증명합니다.

> 전체 벤치마크 출력(30개 결과): [`exampl/dvga-benchmark-result.json`](https://github.com/agent-field/sec-af/blob/main/exampl/dvga-benchmark-result.json) | 성능 분석: [`exampl/benchmark-analysis.json`](https://github.com/agent-field/sec-af/blob/main/exampl/benchmark-analysis.json)

## 벤치마크: DVGA

우리는 의도적으로 취약하게 만든 21개의 문서화된 보안 시나리오를 가진 [Damn Vulnerable GraphQL Application](https://github.com/dolevf/Damn-Vulnerable-GraphQL-Application)을 대상으로 SEC-AF를 실행합니다.

| 지표 | 값 |
|---|---|
| 발견된 원시 결과 | 106 |
| AI 중복 제거 후 | 61 |
| **적대적 검증 후** | **28 confirmed** |
| Inconclusive(수동 검토 필요) | 1 |
| 악용 불가(올바르게 기각됨) | 1 |
| 노이즈 감소 | 94% |
| DAG 간선(reasoner 호출) | 82 |
| 에이전트 호출 | ~166–255 |
| 실행된 전략 | 11 |
| 실제 소요 시간 | ~78 min |
| 예상 비용(Kimi K2.5) | ~$0.18–$0.90 |

<details>
<summary><strong>분류별 30개 검증 결과 분석</strong></summary>

| 카테고리 | 개수 | 예시 |
|---|---|---|
| 인증 누락 | 8 | ImportPaste, delete_all_pastes, system_debug, CreateUser, 파일 업로드 |
| 명령어 주입 | 4 | `os.popen(cmd)` via ImportPaste, system_debug, system_diagnostics |
| SQL 주입 | 3 | `resolve_pastes`의 비위생화 `filter`, LIKE 패턴 주입, login |
| 인증 우회 | 3 | JWT 서명 비활성화, JWT 인가 우회, 취약한 비밀번호 인증 |
| 평문 자격 증명 | 3 | 평문 비밀번호 저장, 평문 비교, 진단 정보의 비밀번호 |
| SSRF | 2 | ImportPaste 뮤테이션이 사용자 제공 URL을 서버 측에서 따라감 |
| 비즈니스 로직 / URL 검증 | 2 | 불충분한 URL 검증, 인증 없는 대량 삭제 |
| DoS / 리소스 고갈 | 3 | users/audits 쿼리에 페이지네이션 누락, 제어되지 않는 simulate_load |
| 설정 / 비밀값 | 2 | 하드코딩된 JWT/Flask 비밀값, 프로덕션에서 디버그 모드 활성화 |

</details>

<details>
<summary><strong>설계 패턴: AI 네이티브 보안 분석이 작동하는 방식</strong></summary>

SEC-AF는 단일 모놀리식 스캔을 실행하는 대신 많은 초점화된 AI 에이전트를 조합해야만 가능한 몇 가지 아키텍처 패턴을 적용합니다. 이러한 패턴은 AI 기반 보안 분석의 근본적인 문제를 해결합니다.

**1. 적대적 에이전트 긴장(HUNT vs. PROVE)**

대부분의 AI 보안 도구는 단일 모델에게 "이게 취약한가?"라고 묻고 답을 그대로 받아들입니다. SEC-AF는 _발견(finding)_ 에이전트와 _반증(disproving)_ 에이전트를 구조적으로 분리합니다. 헌터는 취약점을 찾도록 유도되고, 프루버는 이를 반증하도록 유도됩니다. 각 결과는 4개 에이전트 검증 체인을 통과합니다. 트레이서가 데이터 흐름을 재구성하고, 새니타이제이션 분석기가 헌터가 놓쳤을 수 있는 완화 조치를 찾고, 익스플로잇 가설 설정자가 구체적인 공격 시나리오를 구성하며, 판정 에이전트가 모든 상충되는 증거를 평가합니다. 에이전트 간의 이러한 적대적 긴장이 94% 노이즈 감소를 이끌어냅니다. 즉, 아키텍처 자체가 회의주의를 내재화한 것입니다.

**2. 점진적 축소를 통한 신호 캐스케이드**

파이프라인은 모든 결과를 사용자에게 한꺼번에 쏟아내는 대신 각 단계에서 신호를 압축합니다. 원시 결과 106개 → AI 중복 제거 후 61개 → 적대적 검증 후 30개. 각 단계는 필터입니다. 이는 인간 보안 팀의 트리아지 방식과 같습니다. 먼저 광범위하게 발견한 다음 점점 더 엄격한 검증을 거치는 것입니다. 핵심 통찰은 각 필터가 _서로 다른 종류의_ AI 추론이라는 점입니다. 중복 제거에는 의미론적 유사성, 검증에는 taint 분석, 확인에는 익스플로잇 구성이 사용됩니다.

**3. 컨텍스트 정리를 통한 정보 경제**

LLM은 관련 없는 컨텍스트를 받으면 더 많이 환각합니다. SEC-AF는 각 에이전트가 필요로 하는 정보만 라우팅합니다. 인젝션 헌터는 데이터 흐름 맵과 입력 진입점으로 정리된 recon 컨텍스트를 받고, crypto hunter는 의존성 트리와 키 관리 패턴을 받습니다. 검증자는 특정 검증 방법에 필요한 필드만 포함된 투영된 결과 뷰를 받습니다. 이러한 전략별 컨텍스트 정리는 환각과 비용을 모두 줄여줍니다. 에이전트는 결코 볼 수 없는 정보로 스스로를 혼란스럽게 만들 수 없기 때문입니다.

**4. 스트리밍 단계 오버랩**

기존 파이프라인은 순차적으로 실행됩니다. recon을 마친 후 헌팅을 시작하고, 그다음 증명을 시작합니다. SEC-AF는 `asyncio.Queue`를 통해 단계를 겹쳐 실행합니다. 헌터는 recon 출력이 도착하는 대로 소비하기 시작하고, 각 헌터가 완료되면 dedup이 결과를 처리합니다. 이후 헌터가 아직 실행 중인 동안 프루버는 첫 번째 중복 제거된 결과를 검증하기 시작합니다. 이 스트리밍 아키텍처는 신호 캐스케이드를 희생하지 않으면서 실제 소요 시간을 줄입니다. 각 결과는 여전히 모든 필터를 통과하지만, 더 일찍 통과합니다.

**5. AI 게이트를 통한 동적 라우팅**

파이프라인은 발견한 내용에 따라 런타임에 적응합니다. AI 게이트가 recon 출력을 검사하고 어떤 헌트 전략을 활성화할지 선택합니다. JWT 인증을 사용하는 Flask 앱은 gRPC를 사용하는 Go 마이크로서비스와 다른 헌터를 트리거합니다. 별도의 CWE 확장 게이트는 감지된 기술 스택에 따라 취약점 대상 목록을 동적으로 넓힙니다. 도달 가능성 게이트는 검증 리소스를 도달할 수 없는 코드에 낭비하기 전에 의존성 취약점에 악용 가능한 호출 경로가 있는지 평가합니다.

**6. 코딩 에이전트를 위한 안내된 자율성**

SEC-AF는 AgentField 하네스를 통해 코딩 에이전트(Claude Code, OpenCode, Codex) 위에서 실행됩니다. 에이전트에게 단일 거대 프롬프트를 주는 대신, 각 reasoner는 단계 인식 안내 자율성을 제공합니다. 에이전트는 좁은 작업 정의, 평면 출력 스키마(2-4개 필드), 전략별 컨텍스트를 받습니다. 에이전트는 이 경계 내에서 완전한 자율성을 가집니다. 파일을 읽고, 코드를 추적하고, 자유롭게 추론할 수 있지만, 하네스는 출력의 _형태_ 를 제한합니다. 이는 자율 에이전트가 작업에서 벗어나거나 구조화되지 않은 결과를 생성하는 일반적인 실패 모드를 방지합니다.

**7. 완전한 관측 가능성을 갖춘 구성 가능한 reasoner DAG**

모든 에이전트 호출은 AgentField 컨트롤 플레인을 통과하여 감사 과정의 완전한 DAG(directed acyclic graph)를 생성합니다. 어떤 헌터가 어떤 결과를 찾았는지, 각 검증에 얼마나 걸렸는지, 프루버가 어떤 증거를 생성했는지, 파이프라인이 어디에 시간을 썼는지 확인할 수 있습니다. 새로운 취약점 클래스를 추가하는 것은 파일 하나, 즉 새 헌터 하나를 추가하는 것입니다. 오케스트레이터가 이를 발견하고, 컨텍스트를 라우팅하고, 기존 dedup → prove → remediation 파이프라인에 결과를 통합합니다. DAG가 곧 아키텍처입니다.

</details>

<details>
<summary><strong>놓친 것(그리고 그 이유)</strong></summary>

놓친 9개 시나리오는 주로 **GraphQL 프로토콜 수준 공격**입니다. 배치 쿼리, 깊은 재귀, 별칭 남용, 필드 중복, 인트로스펙션 노출 등입니다. 이러한 공격은 런타임/DAST 분석이 필요합니다. SEC-AF는 현재 SAST에 중점을 두고 있습니다. 프로토콜 수준 탐지는 로드맵에 있습니다.

</details>

## 작동 방식

SEC-AF는 [Composite Intelligence](https://github.com/Agent-Field/agentfield) 철학을 기반으로 합니다. 단일 모놀리식 LLM 호출에 의존하는 대신, 많은 초점화되고 안내된 LLM 호출을 **reasoner DAG**로 구성하여 아키텍처 자체가 지능을 인코딩합니다(이 패턴에 대한 자세한 내용은 [The Atomic Unit of Intelligence](https://www.santoshkumarradha.com/writing/atomic-unit-of-intelligence) 참조). 각 LLM 호출은 평면 Pydantic 스키마(2-4개 속성)로 작고 명확하게 정의된 작업을 처리합니다. 오케스트레이터는 컨텍스트 흐름, 병렬 처리, 동적 라우팅을 관리합니다.

### 아키텍처: Reasoner 호출 그래프(DAG)
도구 다운로드