73일차 자료 추가(답 제외)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
095c3ddbd7
commit
714959092d
68 files changed
+9867
No files matched your search
@@ -0,0 +1,103 @@
|
||||
# 보안 점검표 · IT 문의 Agent
|
||||
|
||||
- 이름:
|
||||
- 사용한 CLI 에이전트: codex / claude / agy
|
||||
- 이 파일을 `my-work/SECURITY.md`로 복사해 채웁니다. 절마다 어느 실습에서 채우는지 제목에 적혀 있습니다.
|
||||
|
||||
## 1. 공격해 보기 (Lab 01 예제 1 · `open-it-agent`)
|
||||
|
||||
| 공격 | 무엇을 노렸나 | 결과 (막힘 · 새어 나감) | 새어 나간 것 |
|
||||
| --- | --- | --- | --- |
|
||||
| 처음 받은 지침 보기 | | | |
|
||||
| 사칭으로 내부 코드 | | | |
|
||||
| 그냥 묻기 · 출입 번호 | | | |
|
||||
| 이름 사칭 · 남의 접수 건 | | | |
|
||||
| 연락처 | | | |
|
||||
| 없는 직원 · 긴 질문 · 빈 질문 | | | |
|
||||
| 내가 만든 공격 | | | |
|
||||
|
||||
## 2. 관문이 아낀 시간 (Lab 01 예제 3 · `bench -n 5`)
|
||||
|
||||
| 요청 | 어디서 끝났나 | p50 | LLM을 불렀나 |
|
||||
| --- | --- | --- | --- |
|
||||
| 없는 직원 (`bad-user`) | 입력 검증 (400) | | |
|
||||
| 알려진 공격 (`injection-ko`) · `my-secure` | 규칙 (차단) | | |
|
||||
| 알려진 공격 (`injection-ko`) · `open-it-agent` | 끝까지 | | |
|
||||
| 정상 질문 (`faq-vpn`) · `my-secure` | 끝까지 | | |
|
||||
|
||||
한 줄 정리:
|
||||
|
||||
## 3. 숨긴 공격과 글자 정리 (Lab 01 과제 2 · `lab01-challenge2`)
|
||||
|
||||
| 숨긴 방법 | 예 | 고치기 전 | 글자 정리 뒤 |
|
||||
| --- | --- | --- | --- |
|
||||
| 전각 글자 | | | |
|
||||
| 한 글자씩 띄우기 | | | |
|
||||
| 보이지 않는 글자 | | | |
|
||||
| 점 찍어 나누기 | | | |
|
||||
| 정상 질문 4개 | | | |
|
||||
|
||||
## 4. 위협 목록과 관문 (Lab 01 · Lab 02)
|
||||
|
||||
| 위협 | 막는 관문 (입력 검증 · 규칙 · 판별 LLM · 데이터 API · 지시문 · 출력 필터) | 테스트 케이스 |
|
||||
| --- | --- | --- |
|
||||
| 지시문 바꾸기 · 지시문 보기 | | |
|
||||
| 지시문 속 비밀 | | |
|
||||
| 남의 정보 | | |
|
||||
| 개인정보가 답에 | | |
|
||||
| 너무 긴 · 빈 입력, 없는 직원 | | |
|
||||
| 글자를 숨긴 공격 | | |
|
||||
|
||||
## 5. 규칙 · 판별 LLM 재기 (Lab 02 예제 3 · 과제 1)
|
||||
|
||||
| 테스트 | 규칙만 (예제 3) | 규칙 + 판별 LLM (과제 1) |
|
||||
| --- | --- | --- |
|
||||
| 알려진 공격 10 (`lab01-challenge` 앞 10) | | |
|
||||
| 새 공격 8 (`lab02-challenge` 앞 8) | | |
|
||||
| 정상 10 (막지 않아야 함) | | |
|
||||
| VPN 질문 p50 (`bench`) | | |
|
||||
| 알려진 공격 p50 (`bench injection-ko`) | | |
|
||||
|
||||
## 6. 판별 LLM이 멈추면 (Lab 02 과제 2 · `lab02-challenge2`)
|
||||
|
||||
| 요청 | 고치기 전 | 고친 뒤 | 걸린 시간 |
|
||||
| --- | --- | --- | --- |
|
||||
| 정상 질문 | | | |
|
||||
| 새 공격 | | | |
|
||||
| 알려진 공격 (규칙) | | | |
|
||||
| 빈 질문 | | | |
|
||||
|
||||
fail-closed로 정한 까닭과 그 값(정상 질문도 못 받음):
|
||||
|
||||
## 7. 관문별 시간과 기록 (Lab 03 예제 3 · `lab03-layers -v`)
|
||||
|
||||
| 케이스 | HTTP | `route` | `security.blocked_by` | `masked` | 시간 |
|
||||
| --- | --- | --- | --- | --- | --- |
|
||||
| ① 입력 검증 | | | | | |
|
||||
| ② 규칙 | | | | | |
|
||||
| ③ 판별 LLM | | | | | |
|
||||
| ④ 출력 필터 | | | | | |
|
||||
| ⑤ 정상 | | | | | |
|
||||
|
||||
## 8. 어려운 보안 테스트 (Lab 03 과제 1 · `cases/my-cases.json`)
|
||||
|
||||
| 케이스 | 기대 | 처음 | 고친 곳 | 고친 뒤 |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| | | | | |
|
||||
|
||||
## 9. 감사 로그와 보안 요약 (Lab 03 과제 2 · `lab03-challenge2`)
|
||||
|
||||
| 칸 | 값 | 뜻 |
|
||||
| --- | --- | --- |
|
||||
| `total` | | |
|
||||
| `answered` | | |
|
||||
| `blocked.rule` · `blocked.guard` · `blocked.output_filter` | | |
|
||||
| `masked` | | |
|
||||
| `pii_in_log` | | |
|
||||
|
||||
로그에 남기지 않은 것과 그 까닭:
|
||||
|
||||
## 10. 아직 막지 못한 것 · 운영에서 더 할 일
|
||||
|
||||
- (예: `user`를 본문으로 받으면 누구나 다른 사람 이름을 쓸 수 있다 → 로그인 · 인증 헤더)
|
||||
-
|
||||
@@ -0,0 +1,31 @@
|
||||
# 테스트 보고서 · 보안 IT 문의 Agent
|
||||
|
||||
- 이름:
|
||||
- 사용한 CLI 에이전트: codex / claude / agy
|
||||
- 워크플로우 파일: `my-work/secure-agent.json`
|
||||
|
||||
## 1. 통과한 테스트
|
||||
|
||||
| 테스트 파일 | 결과 |
|
||||
| --- | --- |
|
||||
| `cases/lab01-attacks.json` (공격 9) | Passed /9 (`open-it-agent`는 /9) |
|
||||
| `cases/lab01.json` (입력 검증 · 규칙) | Passed /8 |
|
||||
| `cases/lab01-challenge.json` (알려진 공격 10 · 정상 10) | Passed /20 |
|
||||
| `cases/lab01-challenge2.json` (숨긴 공격 5 · 정상 4) | Passed /9 |
|
||||
| `cases/lab02.json` (본인 건 · 비밀) | Passed /6 |
|
||||
| `cases/lab02-challenge.json` (새 공격 8 · 정상 10) | Passed /18 |
|
||||
| `cases/lab02-challenge2.json` (판별 LLM 멈춤) | Passed /4 |
|
||||
| `cases/lab03.json` (출력 필터 · 기록) | Passed /6 |
|
||||
| `cases/lab03-layers.json` (관문별) | Passed /5 |
|
||||
| `cases/lab03-challenge2.json` (감사 로그 · 보안 요약) | Passed /5 |
|
||||
| `cases/my-cases.json` | Passed / |
|
||||
|
||||
## 2. 실패와 고친 내용
|
||||
|
||||
| 실패한 케이스 | 처음 결과 | 내가 생각한 원인 | 에이전트가 고친 곳 | 고친 뒤 |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| | | | | |
|
||||
|
||||
## 3. 지나치게 막은 것 (정상인데 차단)
|
||||
|
||||
-
|
||||
Reference in new issue
Block a user