보안 일을 오래 하면서 한 가지를 반복해서 확인했다. 이제 병목은 취약점을 발견하는 데만 있지 않다. 스캐너는 넘쳐나고, 자동화는 더 넓은 범위를 더 빠르게 훑어내며, 인공지능은 과거보다 훨씬 많은 신호를 포착한다. 그러나 발견은 곧 개선이 아니고, 진단은 곧 변화가 아니다. 남은 문제는 조직이 발견한 것을 어떻게 이해하는지, 구조가 그것을 어떻게 흡수하는지, 제도가 그것을 어떻게 지속시키는지에 있다.

나는 처음부터 구조를 말하던 사람이 아니었다. 처음의 나는 취약점을 찾는 사람이었다. 코드의 약한 지점을 식별하고, 재현하고, 증명하고, 설명하는 일이 보안의 핵심이라고 믿었다. 실제로 그 일은 중요했다. 취약점은 여전히 존재하고, 분석은 여전히 필요하며, 탐지는 여전히 기본이다. 하지만 시간이 지날수록 다른 사실이 눈에 들어오기 시작했다. 기술적으로는 충분히 설명된 문제들이 조직 안에서는 반복해서 미뤄졌고, 잘 정리된 진단 보고서는 게시되는 순간부터 효력을 잃었으며, 한 번 발견된 실패는 다른 형태로 다시 돌아왔다. 취약점은 해결되어도, 실패를 만드는 구조는 그대로 남아 있었다.

그때부터 관심의 중심이 조금씩 이동했다. 더 많은 취약점을 찾는 일보다, 왜 같은 종류의 실패가 반복되는지에 더 관심이 갔다. 왜 어떤 조직은 같은 경고를 수년째 축적만 하는지, 왜 어떤 보고서는 분명한데도 실제 변화로 이어지지 않는지, 왜 어떤 진단은 기술적으로 정확하지만 운영적으로는 무력한지, 왜 어떤 보안 체계는 겉으로는 촘촘해 보여도 실제로는 아무것도 바꾸지 못하는지. 이 질문들은 결국 한 방향으로 모였다. 문제는 탐지 자체가 아니라, 탐지가 들어가는 구조였다.

오늘날 보안은 발견의 부족으로만 설명할 수 없는 단계에 와 있다. 도구는 많아졌고, 데이터는 쌓였고, 자동화는 정교해졌다. 누락이 줄어든 대신 다른 종류의 실패가 더 선명해졌다. 조직은 발견한 문제를 우선순위화하지 못하고, 책임은 분산되지 못한 채 모호하게 떠돌며, 의사결정은 기술적 사실보다 계약 구조와 보고 체계, 비용 부담과 내부 문화에 의해 좌우된다. 경고는 생성되지만 흡수되지 않고, 지표는 수집되지만 학습으로 이어지지 않으며, 보안은 점점 더 기술적으로 정교해지지만 운영적으로는 비슷한 자리에 머문다. 병목은 사라진 것이 아니라 이동한 것이다.

이 블로그는 바로 그 이동한 병목을 기록하기 위해 만들어졌다. 겉으로 보면 이곳의 글들은 서로 다른 주제를 다루는 것처럼 보일 수 있다. 어떤 글은 취약점, 탐지, 공격 표면, 인증 체계, 원격 코드 실행 같은 기술적 문제를 다룬다. 어떤 글은 보고서, 코드, PoC, 자동화, 진단 방식, 실행 가능한 개선 구조를 다룬다. 또 어떤 글은 계약, 거버넌스, 책임, 가시성, 공공재, 제도와 문화 같은 주제를 다룬다. 하지만 이 구분은 서로 분리된 관심사가 아니다. 모두 같은 문제를 다른 높이에서 바라본 결과다.

기술 분석은 증거를 제공한다. 여기서는 실제 시스템, 실제 코드, 실제 실패 패턴이 드러난다. 무엇이 잘못되었는지, 어떤 경로로 문제가 발생하는지, 왜 특정 구조가 공격이나 오작동에 취약한지를 보여준다. 이 기반이 없으면 모든 주장은 공허해진다. 그래서 나는 여전히 기술적 세부를 중시한다. 보안은 결국 실제 코드와 실제 동작을 떠나 존재할 수 없기 때문이다.

방법론은 발견된 문제를 남길 수 있는 형태로 바꾼다. 어떻게 재현 가능한 방식으로 다룰 것인지, 어떻게 보고서로 끝나는 진단을 코드와 절차, 반복 가능한 도구로 전환할 것인지, 어떻게 한 번의 분석을 구조적 자산으로 만들 것인지가 여기에 속한다. 현장에서 가장 자주 사라지는 것도 바로 이 부분이다. 좋은 진단은 있었지만 다음 사람이 다시 쓸 수 있는 형태로 남지 않았고, 문제는 보였지만 조직이 그것을 흡수할 수 있는 방식으로 정리되지 않았다. 그래서 나는 단순히 찾는 것보다, 남길 수 있는 형태로 정리하는 것을 중요하게 생각하게 되었다.

거버넌스와 구조는 지속 가능성을 결정한다. 여기서는 기술 그 자체보다, 기술이 들어가는 환경을 본다. 누가 책임을 지는지, 누가 의사결정을 하는지, 어떤 계약 구조가 실제 보안보다 비용 전가를 우선하게 만드는지, 어떤 제도는 왜 계속 같은 실패를 반복하게 만드는지, 어떤 공공 인프라는 모두가 의존하지만 누구도 유지 책임을 지지 않는지. 이 지점에서 보안은 더 이상 단순한 기술 문제가 아니다. 그것은 설계의 문제이고, 지속 가능성의 문제이며, 조직이 위험을 이해하고 분배하는 방식의 문제다.

그래서 이 글들은 취약점의 목록이 아니라, 반복되는 실패의 구조를 기록하려는 시도다. 개별 취약점은 시간이 지나면 잊힌다. 도구는 교체되고, 제품은 사라지고, 탐지 방식은 계속 진화한다. 그러나 실패를 만들어내는 구조는 훨씬 오래 남는다. 어떤 조직은 늘 같은 병목에 걸리고, 어떤 산업은 늘 같은 방식으로 책임을 회피하며, 어떤 제도는 늘 같은 지점에서 보안을 비용이나 절차의 문제로 축소한다. 나는 점점 더 이 지속되는 구조 쪽에 관심을 갖게 되었다.

내가 이 블로그에서 남기고 싶은 것은 단순한 견해가 아니라 관찰의 축적이다. 하나의 사건을 통해 하나의 구조를 보고, 하나의 취약점을 통해 하나의 병목을 식별하며, 하나의 기술적 분석을 통해 하나의 제도적 결함을 드러내는 식의 기록이다. 어떤 글은 아주 기술적일 것이고, 어떤 글은 운영과 방법론을 다룰 것이며, 어떤 글은 거버넌스와 정책으로 넘어갈 것이다. 하지만 그 모든 글은 하나의 질문으로 이어진다. 우리는 발견한 것을 왜 변화로 바꾸지 못하는가.

이 문서는 그 질문을 처음으로 명시적으로 묶어두기 위한 서문이다. 개별 글의 요약이 아니라, 이 블로그 전체를 관통하는 문제의식을 선언하는 프레임이다. 이후의 글들은 탐지, 분석, 코드, 자동화, 책임, 문화, 공공재, 제도라는 서로 다른 언어를 사용하더라도, 결국 이 한 가지 문제를 향해 읽힐 수 있다. 보안은 여전히 취약점을 다루는 일이다. 그러나 그것만으로는 더 이상 충분하지 않다. 발견 이후를 설계하지 못한다면, 우리는 더 많은 신호를 더 빠르게 수집하면서도 같은 실패를 다른 이름으로 반복하게 될 것이다.

코드는 중요하다. 탐지는 중요하다. 발견도 중요하다. 그러나 그 이후에도 구조는 남는다. 그리고 보안의 다음 과제는 바로 그 남는 것들을 다루는 일이다. 이 글들은 그 이후의 보안에 대한 현장 기록이다.