
CVE-2023-29930에 대한 정보 및 익스플로잇: Genesys TFTP 프로비저닝 서버 구성의 블라인드 파일 읽기/쓰기
이것은 Genesys(이전 명칭 InIn) TFTP 프로비저닝 서버의 블라인드 파일 읽기/쓰기 취약점을 위한 익스플로잇 스크립트입니다.
이 취약점은 TFTP 루트 경로와 파일 확장자에 대한 제한 없는 구성 옵션 때문에 발생합니다. 즉, Admin 인터페이스에서 TFTP를 원하는 디렉터리로 변경하고 원하는 파일을 업로드하거나 다운로드할 수 있습니다.
(단, TFTP는 프로토콜상 파일 목록을 허용하지 않으므로 이것이 블라인드 파일 읽기 취약점이 되는 이유입니다.)
특히 서버가 기본적으로 하드코딩된 알려진 자격 증명을 사용하고 사용자가 이를 변경하도록 강제하지 않는다는 사실 때문에 문제가 더욱 악화됩니다.
분류상 다음 CWE의 특징을 가지고 있습니다:
현재까지 알려진 모든 버전이 취약합니다.
현재로서 가장 좋은 완화 방법은 TFTP 구성 서버의 Admin 자격 증명을 변경하는 것입니다.
Jupyer 노트북 또는 Python REPL 루프와 함께 사용하는 것이 좋으며, 더 고급 사용 사례에서는 자체 스크립트를 작성하여 이 파일을 가져오는 방식도 좋습니다. 기본 파이썬 파일을 가져와 클래스를 인스턴스화한 다음 원하는 대로 get_file과 put_file을 호출하기만 하면 됩니다.
$ python3
>>> from tftplunder import TFTPlunder
>>> tp=TFTPlunder("example.com")
>>> tp.get_file("C:/Windows/Panther/Unattended.xml")
>>> tp.get_file("C:/ProgramData/ntuser.pol")
등등
힌트: ntuser.pol 디코딩에 도움이 필요하면 https://github.com/jtpereyda/regpol 을 참조하세요.
그리고 시도해 볼 다른 파일의 예는 https://github.com/soffensive/windowsblindread/blob/master/windows-files.txt 같은 목록을 참조하세요.