• 카테고리

    질문 & 답변
  • 세부 분야

    보안

  • 해결 여부

    해결됨

android_server 실행 오류 문의

21.04.29 10:07 작성 조회수 226

0

안녕하세요. 강의 수강중에 arm 관련 환경 문제로

강사님 강의에서는 x86 이 아닌 arm 으로 so 파일 디버깅이 잘 되시는거같은데...

저는 android_server 실행이 잘 안되서 문의 드립니다.

IDA 로 so 파일디버깅 하고자 하는데, 오류가 발생하여 실습 진행이 안되고 있습니다.

저의 실제 안드로이드 기기의 abi 는 armeabi-v7a 입니다.

[ro.product.cpu.abi2]: [armeabi]

[ro.product.cpu.abi]: [armeabi-v7a]

실제 기기에서 anroid_server 실행 시 아래와 같은 오류가 발생 합니다.

shell@android:/ $ /data/local/tmp/android_server

/data/local/tmp/android_server

reloc_library[1307]: 14581 cannot locate '__open_2'...

CANNOT LINK EXECUTABLE

 255|shell@android:/ $ /data/local/tmp/android_server64

/data/local/tmp/android_server64

/system/bin/sh: /data/local/tmp/android_server64: not executable: magic 7F45

1|shell@android:/ $ /data/local/tmp/armlinux_server

/data/local/tmp/armlinux_server

/system/bin/sh: /data/local/tmp/armlinux_server: No such file or directory

에뮬레이터는 보통 x86 이기때문에 arm 으로 디버깅하기위한 방법을 찾고있습니다.

실제 기기에서 android_server 동작 방법 또는 에뮬레이터에서의 armeabi-v7a 설정 이 되면 될거같은데....

제가 할 수 있는 조치사항 문의 드립니다.

답변 1

답변을 작성해보세요.

0

안녕하세요!

android_server 관련해서 [IDA설치경로]-[dbgsrv]내 아키텍쳐 별로 android_server 파일이 있습니다.

android_server(arm), android_server64(arm64)이고, 아키텍쳐 확인하는 건 아래 명령어로 확인이 가능합니다.

adb shell getprop ro.product.cpu.abi 

adb shell getprop ro.product.cpu.abi2

다만, 간혹 사용중이신 IDA 버전이 너무 낮은데 비해 안드로이드 기기의 버전이 높다면 실행이 안되는 이슈가 있을 수 있습니다.

제가 주로 사용하는 버전은 IDA 7.0 및 갤럭시S6 Edge(marshmallow) 입니다.

그리고 android_server는 구동 시 root 권한이 필요하기 때문에 루트 권한으로 실행 부탁드립니다.

위 내용으로 확인해보시고 후에도 실행이 되지 않으신다면 다시 한번 질문 혹은 쪽지를 남겨주시면 최대한 지원드리도록 하겠습니다 ^^

감사합니다.