본문 바로가기
분석 TIP/동적분석

IDA를 통해 리눅스 원격 elf 파일 디버깅

by 두유노우컴퓨터 2025. 3. 31.

IDA를 통해 리눅스 원격 elf 파일 디버깅

 

먼저 원격 디버깅을 위해 리눅스 이미지를 가상머신에 올려둔다. Kali Linux라는 PenTest(모의해킹) 용 가상머신 이미지를 통해 리눅스 이미지를 VMware에 올릴 수 있다.

 

https://www.kali.org/get-kali/#kali-virtual-machines

 

Get Kali | Kali Linux

Home of Kali Linux, an Advanced Penetration Testing Linux distribution used for Penetration Testing, Ethical Hacking and network security assessments.

www.kali.org

VMware 표준을 받으면 된다. VMware Weekly는 최신 버전이지만 불안정한 버전이다.

Vmware 이미지 다운로드

 

1. 리눅스 측 설정

 

IDA가 설치된 폴더 안에 dbgsrv 폴더 내부에 존재하는 linux_server, linux_server64 파일 중 설치된 리눅스 환경에 맞게 리눅스에 복사하면 된다. VMware Tools가 잘 설치되어 있다면 드래그 앤 드롭으로 쉽게 옮길 수 있다.

리눅스 환경에 맞는 파일 복사

 

리눅스 환경은 uname -m 명령을 통해 쉽게 32비트인지 64비트인지 구분가능하다. 64비트는 x86_64로 표현되며, 32비트였다면 i386, i486, i586, i686 이런 형태로 나올 것이다.

설치 환경 조사

 

분석 할 elf 파일과 OS환경에 맞는 linux_server64 파일을 리눅스 같은 경로에 복사 한다. 이제 리눅스 서버파일을 실행해줘야하는데 대부분 권한이 없으므로 아래와 같은 명령을 통해 권한을 준다.

chmod 777 linux_server64 sample.elf

 

권한을 변경한 후 linux_server64를 동작 시키면 23946 포트를 통해 리스닝 상태가 된다.

23946 기본 포트

 

2. IDA 측 설정

 

이젠 로컬 IDA 측에서 설정 하면 된다. IDA를 실행 후 [Debugger] -> [Run] -> [Remote Linux debugger] 를 클릭한다.

원격 디버거 선택

 

원격 서버 선택 후 여러 설정들이 존재하며 파라미터가 존재할 경우 추가하면 된다.

  • Application : 분석 파일 전체 경로 (realpath 명령)
  • Directory : 분석 파일 경로 (pwd 명령)
  • Hostname : 원격 IP (ifconfig 명령)
  • Port : 원격 Port (23946 기본포트)

원격 디버거 설정

 

이제 설정이 완료 되었기 때문에 OK를 누르면 디버깅이 시작된다. 실제 샘플이 돌아가는건 원격에서 돌아가기 때문에 악성코드를 분석하는데 문제될 사항은 없다.

 

오류 발생

 

"Could not find the elf interpreter name, shared object events will not be reported" 간단한 오류들은 무시해주고 디버깅을 진행한다.

디버깅 화면

 

'분석 TIP > 동적분석' 카테고리의 다른 글

dnSpy의 Analyzer 기능  (0) 2025.04.25
쉘코드 디버거로 분석하기  (0) 2025.04.14
IDA와 Debugger 주소 매칭  (0) 2025.04.11
Sysmon 통한 리눅스 동적 분석  (0) 2025.03.27
Sysmon 통한 윈도우 동적 분석  (0) 2025.03.26