Flirt라고도하는 빠른 라이브러리 식별 및 인식 기술은 알려진 라이브러리 서브 루틴을 찾아 이름을 바꾸고 강조하기 위해 분해 된 바이너리를 통해 검색하는 IDA의 내부 기호 식별자입니다. Flirt는 라이브러리에서 문서 또는 소스 코드를 읽음으로써 단순히 이해할 수있는 기능을 분석 할 필요가 없으며 상징적 인 양으로 반전 및 이해하기 위해 필요한 작업의 양을 줄입니다.
자세한 내용은 https://www.hex-rays.com/products/ida/tech/flirt/index.shtml을 방문하십시오
다음은 Flirt의 내부 작업에 대한 지나치게 단순화 된 다이어그램입니다.
시스템에 대한 입력은 선택 라이브러리의 라이브러리 파일 (.lib)이며 출력은 /sig 아래에 저장된 서명 파일 (.SIG)입니다 (그리고 그렇지 않으면 IDA는 찾을 수 없습니다). 도구 중 하나 (PLB/PCF/PELF)를 사용하여 (고객에게 지불하기 위해 제공) 라이브러리의 모든 기능을 PAT 파일 (.pat)에 저장된 서명으로 변환합니다. 서명 파일을 작성하는 마지막 단계는 생성 된 PAT 파일을 SIGMAKE를 사용하여 IDA에서 사용할 수있는 .sig 파일로 변환하는 것입니다. 이것의 문제는 육각형이 사용하는 방법이 바보 증거가 아니기 때문에 때때로 서명에 충돌이 존재한다는 것입니다. 오류가 발생하면 exc (.exc) 파일이 생성됩니다. 충돌을 무시하려면 처음 몇 개의 주석 ( ';')과 Sigmake를 다시 실행 하여이 파일을 편집하십시오.
자세한 내용은 Flair Tools 디렉토리 내부의 readme 내부를 살펴보십시오.
끝없는 빌드/버전이있는 수많은 라이브러리 (오픈/닫힌 소스)가 있다는 사실을 고려할 때 Hex-Rays 팀이 항상 필요한 서명 파일을 제공 할 수는 없습니다. 이로 인해 리버스 엔지니어가 서명 파일을 잡을 수있는 허브 역할을하기 위해이 저장소를 만들었습니다 (그리고 희망적으로 업로드).
누구나 라이브러리의 특정 버전에 대한 서명 파일을 생성하고 윤리에 따른 규칙에 따라이 저장소에 기여할 수 있습니다.
관리 할 다양한 라이브러리/버전이 있다는 사실 때문에 사람들이 원하는 것을 쉽게 찾을 수 있도록 모든 정보를 가장 쉬운 방법으로 정렬해야합니다. 아래 규칙을 따르면 모든 것이 순조롭게 진행되기를 바랍니다.
마이클 키로스