레이더 2

Radare2
레이더 2
Radare2.svg
CutterUiScreenshot2.png
표시된 것은 Radare2의 그래픽 사용자 인터페이스인 Iaito입니다.
원저작자Sergi Alvarez (팬케이크)
개발자팬케이크와 커뮤니티
안정된 릴리스
5.6.8 / 2022년 4월 18일; 49일 전(2022-04-18)[1]
저장소
기입처C[2]
운영 체제Linux, BSD, macOS, Microsoft Windows, Haiku, Android, iOS, Solaris
이용가능기간:영어
유형디스어셈블러
면허증.LGPL
웹 사이트www.radare.org/r/ Edit this on Wikidata

Radare2(r2)는 바이너리를 리버스 엔지니어링 및 분석하기 위한 완전한 프레임워크입니다.커맨드 라인과 함께 또는 독립적으로 사용할 수 있는 소규모 유틸리티 세트로 구성됩니다.기계 실행 가능코드에서 어셈블리 언어 소스 코드를 생성하는 컴퓨터 소프트웨어용 디스어셈블러를 중심으로 구축되어 다양한 프로세서 아키텍처운영 체제용 실행 파일 형식을 지원합니다.

역사

Radare2는 2006년 [3]2월 16진수 에디터에게 64비트 오프셋을 지원하는 자유롭고 단순한 명령줄 인터페이스를 제공하는 것을 목표로 개발되었습니다.이것에 의해, 하드 디스크로부터 검색 및 데이터를 회복해, 법의학적 목적을 위해서입니다.그 이후로 이 프로젝트는 Unix [4]철학의 몇 가지 원칙을 준수하면서 바이너리를 분석하기 위한 완전한 프레임워크를 제공하기 위해 목적을 변경하면서 성장해 왔습니다.

2009년, 초기 설계의 한계를 벗어나기 위해 완전히 다시 쓰기로 결정했습니다.그 후, 프로젝트는 계속 [5]성장해, 몇몇 상주 개발자를 끌어들였습니다.

2016년에는 바르셀로나에서 [6][7]제1회 r2con이 개최되어 100명 이상의 참가자가 모였으며, 프레임워크의 다양한 특징과 개선점에 대한 다양한 논의가 이루어졌다.

Radare2는 recon,[8] hack.lu,[9][3] 33c3와 같은 여러 주요 보안 회의에서 여러 프레젠테이션의 초점이 되어 왔습니다.

기능 및 사용방법

Radare2는 주요 실행 가능 바이너리가 명령줄에 의해 작동되고 GUI 자체가 없기 때문에 학습 곡선이 가파르다.원래는 16진수 에디터를 중심으로 구축되었지만, 현재는 다양한 툴과 기능을 갖추고 있으며, 여러 [10]언어에 대한 바인딩도 갖추고 있습니다.한편, 웹이 있습니다.UI와[11] Radare2의 공식 그래픽 사용자 인터페이스 프로젝트는 Iaito라고 불립니다.[12]

정적 분석

Radare2는 많은 소프트웨어 프로그램(주로 실행 가능 파일)을 조립 및 분해할 수 있지만,[13] 그래프와 함께 바이너리 디퍼링을 수행하거나 재배치 기호와 같은 정보를 추출하거나 기타 다양한 유형의 데이터를 추출할 수도 있습니다.내부적으로 sdb라는 이름NoSQL 데이터베이스를 사용하여 radare2에 의해 추론되거나 사용자가 수동으로 추가할 수 있는 분석 정보를 추적합니다.부정한 바이너리를 처리할 수 있기 때문에 소프트웨어 보안 연구자에 의해 분석 [14][15][16]목적으로도 사용되고 있습니다.

동적 분석

Radare2에는 [citation needed]GDB보다 낮은 수준의 디버거가 내장되어 있습니다.또한 GDB 및 WineDBG[17] 인터페이스하여 다른 시스템에서 Windows 바이너리를 디버깅할 수도 있습니다.또한 VMWare를 사용하는 커널 디버거로도 사용할 수 있습니다.

소프트웨어 이용

radare2는 디스어셈블러와 로우 레벨 디버거를 갖추고 있기 때문에 악용 개발자에게 유용합니다.이 소프트웨어에는 ROP 가젯 검색 엔진이나 경감 검출등의 부정 이용 개발에 도움이 되는 기능이 있습니다.소프트웨어의 유연성과 많은 파일 형식 지원으로 플래그[18][19] 및 보안 지향 [20]인력을 캡처하는 데 자주 사용됩니다.또한 Radare2는 메타스플로이트와 마찬가지로 'ragg2' 도구를 사용하여 셸 코드를 작성하는 데 도움을 줄 수 있습니다.

그래피컬 사용자 인터페이스(GUI)

프로젝트 Iaito는 radare2의 첫 번째 전용 그래피컬 사용자 인터페이스(GUI)로 개발되었으며, Cutter는 radare2의 두 번째로 개발된 그래피컬 사용자 인터페이스(GUI)로 분기되었습니다.2020년에 커터 프로젝트가 radare2 프로젝트에서 분리되었을 때, Iaito는 radare2 프로젝트 [21]멤버가 관리하는 현재의 공식 radare2 그래피컬 사용자 인터페이스(GUI)로 재개발되었습니다.

지원되는 아키텍처/포맷

레퍼런스

  1. ^ "Releases · radareorg/radare2". github.com. Retrieved 2022-04-24.
  2. ^ Git 저장소
  3. ^ a b "Radare demystified". Chaos Computer Club media site. CCC. 2016-12-29. Retrieved 2016-12-29.
  4. ^ "I have written more than 300.000 code lines for Radare". www.cigtr.info. Archived from the original on 2018-11-03. Retrieved 2017-01-21.
  5. ^ CCC, radare demystified, retrieved 2017-01-21
  6. ^ "r2con 2016". NCC Group. Retrieved 2017-01-21.
  7. ^ Bakken, Sam (2016-08-09). "The hacker behind open-source, reverse-engineering tool Radare..." NowSecure. Retrieved 2017-01-21.
  8. ^ "Recon 2015 Schedule". recon.cx. Retrieved 2017-01-21.
  9. ^ "Talks at Hack.lu 2015". Hack.lu 2015. Retrieved 2017-01-21.
  10. ^ radare2의 바인딩을 위한 Git 저장소
  11. ^ 새로운 웹 인터페이스
  12. ^ "iaito". rada.re. Retrieved 14 August 2021.
  13. ^ Linux con Radare2의 바이너리 디퍼링 비주얼
  14. ^ AlienVault - OSX/Leverage.a 분석
  15. ^ Craig Heffner - 컨슈머 펌웨어 백도어 검색 및 반전
  16. ^ PHDys IV, 2014년 5월 21일, 'Anton Kochkov', 샤일록/캡하우가 그린 radare2 응용 프로그램.D랑 스낵소.분석
  17. ^ Radare2에서의 WinDBG 지원에 대한 Gmane 아카이브
  18. ^ 드래곤 섹터
  19. ^ LSE
  20. ^ Prack - radare를 사용한 수동 바이너리 망글링
  21. ^ "iaito". rada.re. Retrieved 14 August 2021.
  22. ^ Dydl 캐시 - iphonedevwiki.그물
  23. ^ .XBE 파일 형식 1.1
  24. ^ Tavis Ormandy - 제약이 있는 프로그래밍을 즐기다

추가 정보

외부 링크