Command Injection에 대해 알아봅시다
Command Injection이란? 명령어 삽입 공격으로 취약한 운영체제에서 임의의 명령어로 공격하는 기법입니다.
명령어 ; 명령어
의 형태로
ping 127.0.0.1 c 3 ; ls -al
다음과 같은 방법으로 사용됩니다.
Command Injection 공격은 ping으로 예를 들었지만
명령어 ; 명령어
형태로 임의의 명령어가 와도 무관합니다.
ping 명령어는 대상의 호스트가 살아있는지 여부를 알아보기 위한 명령어인데
;(세미콜론) 뒤 다른 명령어를 이어서 전송함으로써 결과를 얻는 방식입니다.
그렇다면 Command Injection의 대응책은 무엇일까?
Command Injection 의 대응책으론 사용자로부터 입력받은 해당 부분 이외 정보는 받지 않게 하는 것이다.
'&' => ' ',
'|' => ' ',
';' => ' ',
다음과 같이 사용자들의 필요정보 이외 특수문자를 입력 받았을때 공백으로 처리해주면서 이러한 공격을 대응하는 것입니다.
사용자로부터 숫자만 입력받아야 한다면
문자를 입력받지 못하게 해 주고
문자만 입력받아야 한다면
특수문자 , 숫자는 입력받지 않게 설정해 둠으로서
Command Injection 공격을 예방할 수 있습니다.
'Security' 카테고리의 다른 글
[Kali Linux] 설치 파일을 위변조 후 백신을 우회하여 권한 탈취 (0) | 2021.05.30 |
---|---|
[Kali Linux] 설치 파일을 위변조하여 사용자 권한 탈취 (Reverse Shell) (0) | 2021.05.21 |
[Kail Linux] Captcha에 대해 알아보기 (0) | 2020.02.07 |
[Kail Linux] 파일 인클루젼 공격 알아보기 (file inclusion) (0) | 2020.02.05 |
[Kail Linux] Brute force 알아보기 (0) | 2020.02.03 |
댓글