릴리스 후의 보안, 누가 계속 지켜볼까.
WordPress.org의 심사는 공개 시점에 단 한 번입니다. 승인 메일에도 명확하게 적혀 있습니다. '앞으로 가이드라인 위반이나 보안 문제가 커뮤니티나 자동 스캐너로부터 보고되지 않는 한, 수동 재검토는 진행하지 않는다'라고요. 즉, 공개 후의 품질 유지는 전적으로 개발자의 책임입니다.
개인 개발로 4개의 플러그인을 만들었습니다. 전담 보안팀은 없습니다. 하지만 폼 플러그인(HXFE)은 파일 업로드도, CAPTCHA도, SMTP도, Webhook도 다루고 있어 공격 면적이 결코 작지 않습니다.
그래서 생각했습니다. 체크리스트를 MD로 작성하고 매달 AI에게 전달하면 어떨까?
시스템은 간단하다
만든 것은 SECURITY-CHECKLIST.md라는 단 하나의 Markdown 파일입니다. 리포지토리 직하단에 두고 있습니다.
구성 방식은 이렇습니다.
# HXFE 월간 보안 체크리스트
> 사용법: 매달 1회, 이 MD를 코드베이스와 함께 AI 에이전트에게 전달하며,
> '이 체크리스트에 따라 감사를 실행하고 결과를 작성하여 돌려줘'라고 지시합니다.
...
핵심은 체크 항목을 'AI가 확인 방법을 스스로 판단할 수 있는 수준의 세분성'으로 작성하는 것입니다.
핵심은 체크 항목을 'AI가 확인 방법을 스스로 판단할 수 있는 수준의 세분성'으로 작성하는 것입니다.
- 체크 관점이 버전 관리됩니다 (리포지토리에 있으므로)
- 과거에 겪었던 문제점(지뢰)이 관점으로 축적됩니다 (HXFE라면 CAPTCHA 검증 타이밍의 버그 수정이 체크 항목으로 영구화되어 있습니다)
- AI가 바뀌어도 운영은 변하지 않습니다 (Claude든 ChatGPT든, MD를 읽을 수만 있다면 실행할 수 있습니다)
마지막 점은 HXMD 기사에서도 썼던 'AI를 결합하지 않는다'는 사상과 같습니다. 시스템은 MD로 만들고, 지능은 외부(API 등)에 맡기는 것입니다.
마지막으로
'릴리스하고 끝'이 아닌 지속적인 운영을 위한 시스템을 추가 도구 없이 Markdown 1장만으로 만들 수 있는 시대가 되었습니다.
체크리스트는 HXFE 리포지토리에 공개되어 있습니다. 폼 플러그인의 공격 면(업로드, 이메일, CAPTCHA, Webhook)을 한 번에 다루고 있으므로, 유사한 플러그인을 개발하는 분들은 기본 틀로 사용하실 수 있을 것입니다.
월 1회, 커피를 내리는 동안 AI가 감사를 마칩니다. 개인 개발의 보안 운영은 이 정도 가볍게 하는 것이 좋다고 생각합니다.
HX Series / WAHX 스택에 대해서는 여기 책에 정리했습니다.
토론