OS 명령 주입
설명
대상 애플리케이션 서버에서 임의의 OS 명령을 실행할 수 있습니다.
OS 명령 주입은 시스템을 완전히 손상시킬 수 있는 치명적인 취약점입니다.
수정 방법
사용자 입력은 OS 명령을 실행하는 함수에 대한 명령 또는 명령 인수를 구성하는 데 절대 사용해서는 안 됩니다.
여기에는 사용자 업로드 또는 다운로드로 제공된 파일 이름이 포함됩니다.
애플리케이션이 하지 않도록 해야 합니다:
- 프로세스 이름에 사용자 제공 정보를 사용하여 실행합니다.
- 셸 메타 문자를 이스케이프하지 않는 OS 명령 실행 함수에 사용자 제공 정보를 사용합니다.
- OS 명령에 대한 인수로 사용자 제공 정보를 사용합니다.
애플리케이션은 OS 명령에 전달될 하드코딩된 인수 집합을 가져야 합니다.
파일 이름이 이러한 함수에 전달되는 경우 파일 이름의 해시를 대신 사용하거나 다른 고유 식별자를 사용하는 것이 권장됩니다. 알려지지 않은 제3자 명령에 대한 공격 리스크 때문에 OS 시스템 명령을 사용하는 대신 동일한 기능을 구현하는 네이티브 라이브러리를 사용하는 것이 강력히 권장됩니다.
세부정보
ID | 집계 | CWE | 유형 | 위험 |
---|---|---|---|---|
78.1 | false | 78 | Active | high |