I Gave Claude Code Our Server Logs (Here''s What It Caught)
Quick Summary
Claude Code에 서버 로그를 읽게 하자 평소와 다른 접속 위치·배포 IP와 루트 계정 사용을 발견했고, 자동 점검의 실행 여부와 데이터 수집 완전성까지 확인해야 한다는 교훈을 얻었다.
영상 보기
클릭 전까지는 가벼운 미리보기만 먼저 불러옵니다.
🖼️ 인포그래픽

🖼️ 4컷 인포그래픽

💡 한 줄 결론
Claude Code에 서버 로그를 읽게 하자 평소와 다른 접속 위치·배포 IP와 루트 계정 사용을 발견했고, 자동 점검의 실행 여부와 데이터 수집 완전성까지 확인해야 한다는 교훈을 얻었다.
📌 핵심 요점
- 소프트웨어 보안은 의존성·플랫폼 취약점 감시, 코드베이스 보안 검사, 운영 로그 모니터링이라는 세 축으로 관리해야 한다. 영상은 세 번째 축의 구현 사례를 다룬다.
- 여러 서비스의 로그를 모으고, AWS 내부 로그는 암호화된 S3와 Athena로 정리해 EC2에서 실행하는 헤드리스 Claude Code가 분석하도록 구성했다.
- 분석 도구에는 로그 읽기 권한만 부여했다. 버킷 쓰기, 비밀정보·환경변수 파일 읽기, 인프라 변경이 거부되는지도 별도로 시험했다고 설명한다.
- 첫 분석은 출장 중인 팀원의 접속 위치 변화, 평소와 다른 배포 IP, 운영자의 루트 계정 로그인을 지적했다. 정상 활동의 맥락과 개선이 필요한 행동을 함께 검토하게 만든 사례다.
- 수동 실행 성공이 자동 운영 성공을 보장하지 않았다. 예약 작업이 활성화되지 않았고, 이후에는 주요 데이터 소스 두 곳에 접근하지 못했는데도 대체로 정상이라는 보고가 나왔다.
🧩 배경과 문제 정의
발표자는 PHP 취약점에 대응해 자신의 서비스에도 주요 보안 업데이트를 적용했던 경험에서 출발한다. 공격자 역시 강력한 AI 도구를 사용할 수 있는 상황에서 소프트웨어 운영자는 의존성·플랫폼, 코드, 실제 운영 활동을 함께 살펴야 한다는 문제의식이다.
영상의 구체적인 대상은 팟캐스팅 플랫폼의 로그 모니터링이다. 여러 곳에 흩어진 운영 데이터를 읽기 전용 분석 환경에 연결하고 Claude Code가 매일 해석해 Slack으로 보고하도록 만들었다. 핵심 과제는 이상 징후를 찾는 데 더해, 분석 작업이 실제로 실행됐고 필요한 데이터를 모두 확인했는지까지 검증하는 것이다.
🕒 시간순 섹션별 상세정리
1. 보안의 세 축과 로그 분석의 역할
- PHP 취약점 대응 경험과 AI 도구를 사용하는 공격자의 속도를 배경으로, 운영자에게 추가적인 관찰 수단이 필요하다고 보여준다. [01:07]
- 의존성·플랫폼 취약점 감시와 정기적인 코드베이스 보안 검사를 첫 두 축으로 제시한다. [01:58]
- 세 번째 축은 실제 운영 활동의 지속적인 관찰이다. 로그인·버튼 클릭·보고서 내보내기부터 데이터베이스와 유입 트래픽까지 로그로 살핀다. [02:43]
2. 로그 수집부터 Claude Code 분석까지
- Cloudflare, 로드 밸런서, AWS GuardDuty, ClickHouse, Sentry 등을 로그·분석 정보의 출처로 보여준다. [03:28]
- AWS 내부 데이터는 암호화된 S3 버킷에 모으고 Athena로 조회할 수 있게 정리한다. AWS의 EC2에서는 헤드리스 Claude Code가 데이터를 해석한다. [04:26]
- 원시 로그와 기존 분석 서비스의 정보를 함께 활용하며, 매일 Slack 보고를 통해 점검 상태와 조치 필요성을 확인하도록 구성한다. [04:53]
3. 읽기 전용 권한과 거부 테스트
- 로그 접근은 읽기 전용으로 제한하고 실행 환경은 AWS 내부에 유지했다고 보여준다. [05:25]
- 버킷 쓰기, 비밀정보와 환경변수 파일 읽기, 인프라 변경이 가능한지 직접 시험했고 모두 거부됐다고 드러낸다. [05:58]
- 이러한 부정 테스트를 통과했지만, 서비스 접근이 탈취되는 상황까지 고려해 추가 강화와 검증을 계속할 계획이라고 덧붙인다. [06:18]
4. 일일 점검과 정상 행동의 맥락
- 서버 타이머가 야간에 스킬과 스크립트를 실행해 보안 점검 보고서를 만들고 Slack에 전달한다. 보고서는 90일간 보관한다. [06:51]
- Slack에는 정상·주의·긴급 상태를 구분해 항상 메시지를 보내도록 구성한다. [07:06]
- 스킬에는 팀원의 통상 위치, 계정, 접속 방식 등을 알려줘 예상 가능한 활동을 판단할 맥락을 제공한다. [07:41]
5. 첫 실행에서 드러난 팀의 운영 습관
- 출장 중인 DevOps 파트너가 평소와 다른 위치에서 접속한 사실을 지적했다. [08:02]
- 여행 중인 개발자의 배포가 기존과 다른 IP에서 이뤄졌다는 점도 경고했다. [08:14]
- 발표자 자신의 루트 계정 로그인을 지적하고 다른 로그인 방식을 마련하도록 권고했다. 첫 실행에서 세 가지 구체적인 점검거리를 얻었다. [08:29]
6. 자동 실행과 데이터 누락에서 얻은 교훈
- Slack 보고가 오지 않아 확인했더니 예약 작업은 설치만 됐고 활성화되지 않았다. 자동 실행 상태로 두고 다음 날 실제 작동 여부를 확인해야 한다고 강조한다. [09:23]
- 이후 보고서는 대체로 정상이라고 하면서도 분석·오류 보고 관련 주요 데이터 소스 두 곳을 확인하지 못했다고 덧붙였다. 원인은 설정 오류였다. [09:46]
- 작업이 실행됐다는 사실과 필요한 데이터를 모두 확보했다는 사실은 다르다. 데이터 접근 실패를 명확히 알리는 규칙이 필요하다는 교훈을 정리한다. [10:14]
7. 전체 보안 체계 안에서의 위치와 마무리
- 의존성·플랫폼 감시, 코드 검사, 로그 관찰이라는 세 축을 다시 정리하며 인프라·애플리케이션·트래픽 수준의 가시성을 강조한다. [11:18]
- Slack 요약만으로는 충분하지 않아 전체 보고서를 확인해야 한다고 드러낸다. 로그 해석 자동화의 가치는 여러 파일을 직접 뒤지는 부담을 줄이고 주의할 상황을 알려주는 데 있다고 보여준다. [12:55]
- 마지막에는 기업의 AI 시스템 설계·구현을 돕는 자신의 자문 서비스를 소개하고 설명란의 안내 링크를 언급한다. [13:15]
🧾 결론
- Claude Code를 활용한 로그 분석은 운영자가 직접 모든 로그를 읽지 않아도 주의할 활동을 살펴볼 수 있는 추가 관찰 수단이다.
- 분석 품질을 높이려면 팀원의 통상 접속 위치·계정·작업 방식처럼 정상 행동을 판단할 맥락이 필요하다.
- 운영 신뢰성은 분석 내용뿐 아니라 예약 실행, 데이터 소스 접근, 전체 보고서 확인까지 포함해 검증해야 한다.
- 이 사례는 로그 가시성을 보강한 경험이며, 의존성 감시와 코드 보안 검사를 포함한 전체 보안 체계를 대신하지 않는다.
📈 투자·시사 포인트
- AI 도입의 실무 가치는 새로운 화면이나 대화 기능뿐 아니라 기존 로그를 해석해 운영 판단을 돕는 데서도 나타난다.
- 이 사례에서는 모델 자체 외에도 데이터 연결, 권한 제한, 실행 확인, 보고 규칙이 결과의 신뢰성을 좌우했다. 기업 도입 시 함께 평가할 요소다.
- 보안 자동화를 검토하는 조직은 경고의 내용과 함께 관측 범위를 확인해야 한다. 주요 소스가 빠진 정상 보고는 잘못된 안도감을 줄 수 있다.
- 영상은 비용, 탐지 정확도, 사고 감소 효과를 수치로 제시하지 않으므로 투자수익률이나 특정 기업의 경쟁력까지 판단할 근거는 부족하다.
⚠️ 불확실하거나 확인이 필요한 부분
- 도입 배경으로 언급한 PHP 취약점은 식별 번호, 영향 버전, 정확한 사건 시점이 제시되지 않아 구체적인 사고와 연결하기 어렵다.
- 발표자는 읽기 전용 권한과 거부 테스트 통과를 설명하지만, 상세 권한 정책과 테스트 코드는 제공하지 않는다. 이 설명만으로 전체 구성의 안전성을 검증할 수는 없다.
- 첫 탐지 사례는 팀원의 이동과 운영자의 계정 사용에 관한 것이다. 실제 공격 탐지 성능, 오탐·미탐 비율, 장기 운영 결과는 제시되지 않는다.
- 자막 기반 정리: 타임스탬프가 있는 자막을 기준으로 정리했으며, 고유명사·수치·인용은 원문 확인 필요 시 별도 검증한다.
- 영상 속 주장: 발표자의 해석·전망·비교는 확인된 외부 사실이 아니라 영상 속 주장으로 분리해 읽는다.
- 검증 필요: 수치, 기업 실적, 정책·시장 전망은 발행 전 최신 자료로 별도 검증이 필요하다.
✅ 액션 아이템
- 현재 사용하는 로그 소스를 목록으로 만들고, 애플리케이션·인프라·트래픽 중 어떤 영역을 관찰할 수 있는지 확인한다.
- 분석 도구의 읽기 권한을 제한하고, 버킷 쓰기·비밀정보 읽기·환경변수 파일 접근·인프라 변경이 실제로 거부되는지 시험한다.
- 정상 접속 위치, 사용자 계정, 배포 방식 등 팀의 평소 운영 맥락을 분석 지침에 반영한다.
- 예약 작업을 활성화한 뒤 다음 날 자동 실행과 보고서 도착을 확인한다. 수동 실행 성공만으로 완료 처리하지 않는다.
❓ 열린 질문
- 출장이나 원격 근무에 따른 정상적인 위치 변화를 반영하면서도 의심스러운 접속을 놓치지 않으려면 기준을 어떻게 관리해야 할까?
- 필수 데이터 소스 중 일부에 접근하지 못했을 때 보고 상태와 후속 조치의 우선순위를 어떻게 정할 것인가?
- 장기 운영에서 탐지 품질과 분석 비용은 어떻게 달라지며, 사람이 전체 보고서를 검토하는 부담은 얼마나 줄어들까?