2008.08.16 16:23

Pangolin 소개

도움말 (http://www.nosec.org/web/pangolin_help)

요즘 많이 사용되고 있는 pangolin 쿼리를 잠깐 살펴보겠습니다.
이는 '천상갑'이라는 뜻을 가지고 있습니다. 인터페이스에 그림이 보입니다.

사용자 삽입 이미지

전체적인 인터페이스이 모습은 위와 같습니다.

사용자 삽입 이미지

다양한 형태의 DB를 지원합니다.
blind 방식도 지원하는 가장 마음에 드는 인젝션 툴입니다.

먼저 바이너리 분석을 위해 실행압축 여부를 확인해 보면 UPX로 패킹되어 있음을 알 수 있습니다.
패킹 여부는 여러가지로 알 수 있으나, UPX의 경우 '-l'  옵션으로 살펴보면 좀 더 알 수 있습니다.

사용자 삽입 이미지

이렇게 간단하게 풀 수도 있고 MUP로 풀 수도 있습니다.
MUP의 경우 OEP에 도착해서 DUMP를 하고 IAT를 복구해 줘야 하는데 이때 사이즈 문제가 좀 있습니다.
ImportREC으로 복구하실 경우에 SIZE를 계산하셔서 직접 Import 되는 함수들을 확인하셔야 합니다.

HDSI나 DSQL 등 다양한 자동화 툴들은 특정 Table을 생성합니다.
Pangolin의 경우도 다음 명령어를 통해서 테이블을 생성합니다.
CREATE TABLE [foofoofoo]([ResultTxt] nvarchar(4000) NULL);--


또한 다음의 명령어로 생성한 테이블을 삭제합니다.
Drop TABLE [foofoofoo];--

아직까지 그런적은 없었지만, 실행 중간에 프로그램이 다운된다면 해당 테이블의 삭제가 정상적으로 이루어 지지 않으므로 흔적이 남을 수도 있을것 같습니다.

첨부한 파일은 Unpack 후 IDA를 통해 얻은 Strings니다.
다양한 공격방법이 존재하는걸 strings을 통해서도 확인할 수 있습니다.

테스트는 항상 자신의 서버 또는 가상머신을 이용해서 하시기 바랍니다.


트랙백이 없고 Comment 2