겐도사마 공식 블로그

Posted
Filed under 개발&Development/웹

이전의 의 버전업을 공개합니다. V4는 이전에 개발되었습니다만 이번에 새로운 문제도 발견되어 V5까지 공개합니다.

이 패턴의 목적은 웹에서의 데이터 처리를 제대로 하는지에 대한 핸들링을 검증하는 일반적인 실험용입니다. SQL Injection쪽과는 상관이 없습니다.

  1. Version 1 : & ' "의 처리 확인, <,> 처리도
    <gen&doh'">
  2. Version 2 : 자바스크립트 대응 주석코드 추가
    <!--gen&doh'"-->
  3. Version 3 : +가 URI로 넘어갈때 공백으로 바뀌는 특성 테스트
    <!--gen&doh+'"-->
  4. Version 4 : V2에서 주석째로 제거되는 경우 에러가 나지 않아 에러를 쉽게 발견하는 코드 추가
    <!-- <![CDATA[gen&doh'"-->+sihwpg]]>
  5. Version 5 : 바보같은 파서를 위한 오픈 코멘트
    <!-- <![CDATA[gen&doh'"-->+sihwpg]]><!--</miyu>

version 2 부터는 ghost님이 참여하셨고, version 5는 miyu님이 발견하셨습니다. version 4부터는 JS 내에서의 스트링 처리를 테스트 합니다. 즉 JS가 아닌 영역은 version 3로도 충분합니다.

정확히 입력받고, 출력되고, 표현되며, 다른 부분에 영향을 주어서는 안됩니다. Version 4의 경우 "<!--"에 대해 파싱 단계에서 무난히 넘어간 후 Script 영역에서 다르게 처리되므로 에러가 발생하지 않는 경향이 있어 이전글에서 설명하였듯이 아예 에러가 나도록 유도합니다. 더불어 "</miyu>"파트는 FireBug가 지적하는 "</"문제를 찾기 위함입니다.

이 글은 절대 펌을 허락하지 않습니다. 오류 수정이나 정보의 집합을 위함입니다. 링크만 거시기 바랍니다.

2008/05/26 00:07 2008/05/26 00:07

겐도님의 새로운 G-Test 패턴 업데이트!

"G-Test Pattern" 이 글은 내 블로그에서 유명한 글 중 하나이자, 종종 오프라인이나 온라인에서 언급이 되기도 한다. 개인적으로는 웹 개발에 있어 기본적인 테스트를 수행할 수 있도록 도와주는 획기적인 "도구"라고 생각한다. 그래서 공개하기로 마음먹었고 몇몇 서비스라도 문제 가능성을 줄어들길 바랬다. 허나 설명이 불충분 했는지 아직도 Version 1인 <gen&doh'">를 통과하지 못하는 서비스가 최신으로 공개되는 것을 보고는 통탄을 금..