1. MSSQL에서 기본적으로 해킹방지하기 위해 아래 프로시저 삭제

use master

EXEC SP_HELPTEXT XP_CMDSHELL // 해당 프로시저의 DLL을 미리 기억해둠..


exec sp_dropextendedproc 'xp_cmdshell'
exec sp_dropextendedproc 'xp_regread'
exec sp_dropextendedproc 'xp_dirtree'


재등록 시 

USE MASTER

EXEC SP_ADDEXTENDEDPROC 'XP_CMDSHELL', 'XPLOG70.DLL'  <- DLL은 미리 기억해 둔다.
EXEC SP_ADDEXTENDEDPROC 'xp_dirtree', 'xpstar.dll' 
EXEC SP_ADDEXTENDEDPROC 'xp_regread', 'xpstar.dll' 


2. 입력 파라메터.. QueryString 체크.. 형 체크

3. 가급적 StoredProcedure 를 사용한다.

4. 파일업로드 시 확장자 체크

5. IIS에서 파일저장영역의 실행권한을 "없음" 으로 변경


기타 좀더 연구되는데로 추가하도록 할께요.. ^^

P.S 아무리 해도 들어올 놈은 들어오더군요.. ㅠㅠ 가장 좋은 방법은 시스템적으로 막는 방법이 있습니다.

웹나이트(Web Knight) 라던지.. 상용 웹방화벽이 되겠네요~ ㅠㅠ