프로젝트 최종 분배
프로젝트 최종 인원 분배는 다음과 같이 결정했다.
- Ring -2 취약점 분석 및 스크립트 작성, 최종 문서화
- DXE Dispatcher 취약점 분석 및 스크립트 작성
- Ring 0 취약점 분석 및 스크립트 작성
- 취약점 코드 생성 및 테스트
- 스크립트 자동화 및 최종 문서화
이렇게 나눴고 난 1번 역할을 담당하기로 하였다.
뭐라도 해보자
스크립트를 담당할 조원들끼리는 Ghidra가 Java로 쓰인 만큼 Java로 스크립트를 작성하기로 이야기를 나눴다. 사실 Jython으로 스크립트를 짜다가 Java로 넘어가는 바람에 설정에서 삽질을 조금 했다…
설정은 다음과 같다.
- Intellij 설치 및 프로젝트 생성
- 파일 -> 프로젝트 구조 -> 모듈
- + 클릭 -> JAR 또는 디렉토리
- 아래 디렉토리 내부 JAR 파일들을 전부 임포트하기
(Mac Homebrew 설치 기준(opt/homebrew/Cellar/Ghidra/12.02/libexec/Ghidra)를 기준으로 한다.)
(아마 윈도우 역시 비슷한 경로에 있을 것으로 생각된다…)
(본인이 일단 다 받고 본 부분도 없지 않아 있어 어떤건 필요하지 않을 수도 있고, 더 필요한게 있을 수도 있다.)- Features/Base/lib
- Framework/SoftwareModeling/lib
- Framework/Generic/lib
- Framework/Docking/lib
- Framework/Project/lib
- Features/Decompiler/lib
- Framework/Utility/lib
위와 같이 잘 진행했다면

위 이미지와 같이 Ghidra 문법에 자동완성이 잘 잡힌다!