블로그 > 나만의 세계 http://blog.naver.com/didorito/60012087196 | |
웹 어플리케이션 시큐리티, 과연 올해 시장이 있을까? 아니면 내년? 웹 방화벽의 시장성에 대해서는 약간 의문이 생긴다. 이러한 제품을 구매할 능력이 있는 회사가 얼마나 될까? 또한 웹의 보안문제로 인한 피해 규모 및 이로인한 파급효과가 얼마나 될지? 자료의 유출이나, 웹 사이트 해킹에 대한 피해액이 과연 이러한 제품을 구매할 만한 가치가 있게 만드는 것일까? 당장 머리속에 떠오르는 의문들이다. 사실 이런걸 예측한다면 만드는 것마다 성공하겠지만 어쨌든 이러한 관점에 대해서는 계속 고민을 해 봐야 할만한 문제라고 생각한다. 기술적인 관점에서는 아직 깊이 서베이를 해보지 않아서 단편적인 지식만 있는 상태이다. 하지만 대강 (항상 그렇지만) 파악한 바로는 - learning based approach - rule-based approach 이렇게 두 가지가 있는 것으로 알고 있다. 약간 다른 관점에서 vulnerability scanner가 있지만 성향이 약간 달라 현재 고려대상에서 제외하는게 좋을 것 같다고 판단했다. learning 방식에 대해서는 구체적으로 파악하지는 못 했지만, 정상적인 HTTP request/reponse 에서 규칙을 추출하는게 아닌가 한다. 어떤 dynamic page에 대한 request의 parameter의 전달 형태와, response의 형태를 규칙을 자동으로 생성하고 적용시에 이와 위배되는 request와 reponse가 발견되면 차단하는 걸로 파악이 된다. 반변 rule-based approach는 학습 방법과는 달리, 잘 알려진 attack이나 페이지의 변조, 데이터의 유출 등에 대한 rule-set을 미리 정의하여 이 규칙에 위배되는 request를 차단하는 방식으로 파악하고 있다. 현재 나의 관심 대상인 mod_security는 후자의 방식을 채택한 것으로 아파치의 module로 사용되며, mod_proxy와 같이 이용시에 웹 서버와 무관하게 적용할 수 있을 것으로 보인다. 현재 쓸만한 오픈소스의 조사가 더 필요하긴 하지만 mod_security와 같이 범용적으로 사용할 수 있는 오픈소스는 그다지 많지 않으리라고 파악하고 있다. 뭐, 더 있다면 좋겠지만... 아파치+mod_proxy+mod_security의 조합은 범용적으로 쓸 수 있기에는 좋은 조합이지만 언제나 그렇듯이 performance에 치명적인 단점이 있으리라고 생각한다. 이 부분에 대해서는 좀더 효율적인 구조로 변경을 통한다면 좀더 상용제품에 가까운 웹 방화벽을 만들 수 있지 않을까 한다. 시간이 되면 효용성에 대한 분석과 더불어 소스코드에 대한 좀더 심화된 분석이 필요하다. 사실 잠깐 코드를 들여다 보았는데, 스윽 본거라 뭐라고 적을만한 내용은 아직까지는 없다. 하지만 기능과 rule-set 측면에서 적용가능한 보안 정책에 대해서는 이제부터라도 조사를 시작해야 할 것 같다.... < 자료 > - 아파치 + mod_proxy + mod_security 의 조합에 대한 overview성격의 자료 http://www.securityfocus.com/infocus/1739 - mod_security 에 대한 자세한 정보는 - 웹 어플리케이션 시큐리티에 대한 정보는 |
0