[시큐어코딩 가이드] 2-1-2. 코드 삽입
코드삽입 정의 공격자가 소프트웨어의 의도된 동작을 변경하도록 임의 코드를 삽입해 소프트웨어가 비정상적으로 동작하도록 하는 보안약점을 의미한다. 프로그래밍 언어 자체의 기능에 한해 이루어진다는 점에서 운영체제 명령어 삽입과 다르다. 사용자 입력값에 코드가 포함되는 것을 허용할 경우, 공격자는 코드를 실행해 권한 탈취, 인증우호, 시스템 명령어 실행 등을 할 수 있다. 안전한 코딩기법 동적코드를 실행할 수 있는 함수를 사용하지 않는다. 필요시, 동적코드를 입력값으로 받지 않도록 화이트리스트 기반 검증을 해야한다. 또는 유효한 문자만 포함하도록 입력값을 필터링해야한다. 코드예제 eval() 안전하지 않은 코드예제입니다. 입력받은 값을 검증없이 eval() 함수의 인자로 사용하고 있습니다. 입력값을 검증없이 사..