서버 측 코드 삽입 (Python)
DAST 브라우저 기반 검사 94.3 — Python 코드 삽입 취약점 설명 및 조치 방법
설명 # 대상 애플리케이션에서 코드 삽입 취약점이 발견되었습니다. 악의적인 공격자가 서버에서 실행될 임의의 Python 코드를 삽입할 수 있습니다. 이로 인해 저장된 비밀 정보에 접근하거나, 계정을 탈취하는 코드를 삽입하거나, OS 명령을 실행하는 등 시스템 전체가 침해될 수 있습니다. 조치 방법 # eval 이나 exec 과 같이 문자열 데이터를 코드로 평가하는 함수에 사용자 입력을 직접 전달하지 마십시오. 이러한 메서드에 문자열 값을 전달하는 것은 거의 이점이 없으므로, 현재 로직을 사용자 입력과 함께 동적으로 로직을 평가하는 보다 안전한 구현으로 교체하는 것이 가장 좋은 권장 사항입니다. 한 가지 대안은 함수나 메서드를 키를 사용하여 조회할 수 있는 해시맵에 저장하는 것입니다. 키가 존재하는 경우 해당 함수를 실행할 수 있습니다. def func_to_run (): print ( 'hello world' ) function_map = { 'fn' : func_to_run} in
