..

강의 노트 - 문자열 검색, Strings

1. 문자열 검색

2024-03-21(목) | 보안위협탐지및분석

일반적으로 실행파일에서 ASCII1나 유니코드 포맷으로 저장된 문자열2을 검색할 수 있다.

문자열 포맷 비트
ASCII 8(1byte)
Unicode 16(2byte)

1.2 유의 사항

예컨대 Strings 도구를 이용한 문자열 검색 결과가 다음과 같다면:

C:>strings bp6.ex_
VP3
VW3
t$@
D$4
99.124.22.1
e-@
GetLayout
GDI.DLL
SetLayout
M}C
Mail system DLL is invalid.!Send Mail failed to send message.

다음과 같은 내용을 의심해 볼 수 있다.

문자열 내용
VP3 메모리 주소, CPU명령어, 프로그램 사용 데이터
GetLayout, SetLayout 윈도우 그래픽 라이브러리에서 사용하는 윈도우 함수
GDI32.DLL 그래픽 프로그램이 사용하는 일반적인 윈도우 동적 링크 라이브러리(DLL; dynamic link library)
99.124.22.1 IP 주소로 파악할 수 있음

마지막 문자열은 에러 메시지로, 종종 의미 있는 정보를 가진다. 여기서 사용한 Strings 도구에 대해 알아보자.

1.3 Strings 도구

Strings 도구는 아래 사이트에서 다운로드 받을 수 있다. 이번 강의에서는 Strings v2.53이 사용됐다. https://docs.microsoft.com/ko-kr/sysinternals/downloads/strings

설치 후 사용 방법은 다음과 같다.

  1. cmd 창을 열어 Strings 도구를 다운 받은 위치로 이동한다.
  2. strings.exe를 실행한다.
  3. 검색하려는 실행 파일의 문자열을 검색한다.

  1. American Standard Code for Information Interchange 

  2. Wide character, 확장 문자라고도 한다. 확장 문자(擴張文字)는 일반적으로 전통적인 8비트 문자 보다 크기가 더 큰 컴퓨터 문자의 자료형이다. 확장된 자료형 크기는 더 큰 부호화 문자 집합을 이용할 수 있게 한다. 위키백과-확장 문자