현재 오유는 일상 대화에는 아무 해가 없는 일상 언어 del.ete를 필터링하고 있습니다.
scr.ipt 같이 그냥 삭제되는 단어도 있고, del.ete 같이 경고문 떠서 차단되는 단어도 있습니다.
그 결과, javasc.ript라는 단어를 쓰면 sc.ript가 빠져 java가 되어 의미 전달이 잘못 되는 경우도 많이 봤습니다. 프로그래밍 게시판인데 이런 일은 없어야겠죠?
그래서, 차단 없이 엔티티로 변환하여 볼 수는 있으면서 실행되지는 않도록 필터링하는 방법을 제가 한번 만들어 봤습니다.
결과물: HTML이나 CSS 단어는 변환하지 않아 자유도를 유지하되 자바스크립트는 이렇게 안전하게 엔티티로 변환되어 SQL이나 XSS에 위험 없이 안전하게 글을 올리거나 보실 수 있습니다.
// 사용방법
// SQL 필터링시 antisql($문장);
// XSS 필터링시 antixss($문장);
다운로드
다운받아서 자유롭게 수정하여 쓰실 수 있습니다. 바보님 쓰셔도 됩니다.