Hacker News 의견
  • CDN에서 WAF 규칙을 설정하는 사람들은 기술 콘텐츠를 다루는 사이트와 서비스를 잘 이해하지 못하는 경우가 많음. Cloudflare뿐만 아니라 Akamai도 같은 문제를 겪음

    • 데이터베이스를 다루는 사이트라면 기본 SQL 인젝션 공격 방지 규칙을 켜면 사이트가 망가질 수 있음
    • 파일 포함 규칙 세트도 있어서 /etc/hosts/etc/passwd 같은 것이 차단됨
    • 보안과 사용성 간의 균형이 중요하다고 생각함. 모든 WAF 규칙을 적용하면 보안이 강화되지만, 기술 개념을 논의해야 하는 서비스에서는 불편함
    • 규칙을 세밀하게 조정하는 것은 시간이 많이 걸림. 규칙을 유지하면서 사용 사례를 허용하려면 많은 변경이 필요함
    • 페이지가 로드되지 않거나 리소스가 로드되지 않는 등의 문제가 발생할 수 있음. 규칙을 끄고 싶은 유혹이 있음
  • 전자상거래 플랫폼에 대한 일화가 떠오름: 누군가 메모리 누수가 있는 웹샵을 코딩했고, 로그에 "OutOfMemoryException" 문자열이 나타나면 앱을 재시작하는 방식으로 해결했음

    • 다른 개발자가 고객 검색어를 기록하고 싶어 했고, 누군가 검색창에 "OutOfMemoryException"을 입력하면 문제가 발생함
  • /etc/hosts/etc/./hosts를 차단하는지 궁금함. 이는 실패할 수밖에 없는 두더지 잡기 게임 같음. 해커들은 더 똑똑하고 결단력이 강하므로 검증된 보안에만 의존해야 함

  • Substack이 기술 작가들을 위해 이 상황을 어떻게 개선할 수 있을지에 대한 의견

    • 사람들이 어떤 주제에 대해서든 글을 편집할 수 있는 엔드포인트에서 어리석은 WAF를 실행하지 말아야 함
    • 웹 개발 포럼에서 XSS 필터를 구현하여 회원들이 XSS에 대해 이야기하지 못하게 하는 것과 같음
    • 콘텐츠를 적절히 이스케이프하는 방법을 배워야 함
  • 웹 보안에서 보호와 사용성 간의 긴장감에 대한 흥미로운 사례를 강조함

    • 하지만 이 경우는 버그를 강조함. 보안과 사용성 간의 긴장감은 실제로 존재하지만, 이 경우는 아님
    • 보안과 사용성 간의 긴장은 보통 트레이드오프임. 보안을 강화하면 사용자 경험이 저하됨
    • 이 경우는 나쁜 보안과 나쁜 사용자 경험 모두를 보여줌
  • 경쟁 프로그래밍 팀을 가르치던 중 발생한 문제: C++ 타입과 키워드가 코드에 나타나면 403 오류가 발생함

    • 은행에서 일할 때, Python 파일을 제출해야 하는 API가 있었고, 대부분의 Python 파일이 403 오류를 발생시킴
    • 새로운 클라우드 환경에서도 비슷한 문제가 발생함
  • 내부 레드 팀이 XSS 및 기타 인젝션 공격 시도를 포함한 데이터를 게시했을 때 발생한 문제

    • 공격 자체는 작동하지 않았지만, 이러한 항목의 존재로 인해 내부 관리자 페이지가 로드되지 않음
  • 오래된 문제가 다시 나타남. 이를 Scunthorpe 문제라고 부름

  • OpenRouter와 관련된 유사한 문제를 경험함. OpenRouter는 다양한 LLM을 사용할 수 있는 단일 엔드포인트를 제공하는 서비스임

    • 특정 HTML 및 JavaScript 조각이 POST 요청 본문에 포함되면 많은 요청이 차단됨
  • 콘텐츠 필터링은 맥락에 크게 의존해야 함. WAF가 필터링해야 할 것과 분리되어 있으면 문제가 발생함

    • 스팸 필터링과 유사함. 이메일 서버는 발신 서버의 구성에 따라 필터링함
    • 콘텐츠 기반 필터링보다 전달 기반 필터링이 더 효과적임. 웹 사이트와 WAF에서도 동일하게 적용됨