Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
freddy — Java 및 .NET 애플리케이션에서 능동 및 수동 스캔을 사용하여 역직렬화 문제를 자동으로 식별합니다. | Kitploit
도구/GitHubGitHub/nccgroup/freddy
Vulnerability ScannersCode AnalysisExploitationWeb Application ExploitationPenetration Testing
GitHubnccgroup/freddy

freddy

Java 및 .NET 애플리케이션에서 능동 및 수동 스캔을 사용하여 역직렬화 문제를 자동으로 식별합니다.

저장소 보기
58210055년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
웹사이트
공유

Freddy the Serial(isation) Killer - 역직렬화 버그 찾기

Burp Suite 확장 프로그램으로, 직렬화 라이브러리/API를 탐지 및 익스플로잇하는 데 도움을 줍니다.

이 유용한 확장 프로그램은 원래 Nick Bloor(@nickstadb)가 NCC Group을 위해 개발했으며, 주로 Alvaro Muñoz와 Oleksandr Mirosh의 연구 Friday the 13th: JSON Attacks를 기반으로 합니다. 이 연구는 Black Hat USA 2017과 DEF CON 25에서 발표되었습니다. 이들은 다양한 Java 및 .NET용 JSON 및 XML 직렬화 라이브러리를 검토했으며, 많은 라이브러리가 임의의 런타임 객체 직렬화를 지원하므로 많은 직렬화 기술과 마찬가지로 취약하다는 것을 발견했습니다. 즉, 역직렬화 중 또는 직후에 실행되는 코드 조각(POP 가젯)이 직렬화된 객체의 속성을 통해 제어될 수 있어 종종 임의 코드 또는 명령 실행 가능성이 열립니다.

또한 Moritz Bechler의 논문 Java Unmarshaller Security - Turning your data into code execution 및 도구 marshalsec을 기반으로 YAML 및 AMF를 포함한 더 많은 형식을 지원하는 모듈이 추가되었습니다.

이 Burp Suite 확장 프로그램은 취약한 라이브러리를 식별하고 익스플로잇하기 위해 수동 스캔과 능동 스캔을 모두 구현합니다.

Freddy 기능

수동 스캔

Freddy는 HTTP 요청에서 유형 지정자나 기타 시그니처를 감시하고 대상 라이브러리에서 발생하는 예외에 대한 HTTP 응답을 모니터링하여 잠재적으로 위험한 직렬화 라이브러리 및 API의 사용을 수동으로 감지할 수 있습니다. 예를 들어 FastJson 라이브러리는 JSON 필드 $types를 사용하여 직렬화된 객체의 유형을 지정합니다.

능동 스캔

Freddy는 영향을 받는 라이브러리를 탐지하고 가능한 경우 익스플로잇하려는 능동 스캔 기능을 포함합니다.

능동 스캔은 예외 기반, 시간 기반 및 Collaborator 기반의 세 가지 방법을 사용하여 취약한 라이브러리의 사용을 탐지하려고 시도합니다.

예외 기반

예외 기반 능동 스캔에서 Freddy는 알려진 대상별 예외 또는 오류 메시지를 트리거해야 하는 데이터를 HTTP 요청에 삽입합니다. 이 오류 메시지가 애플리케이션의 응답에서 관찰되면 이슈가 보고됩니다.

시간 기반

경우에 따라 시간 기반 페이로드를 탐지에 사용할 수 있습니다. 역직렬화 중에 운영 체제 명령 실행이 트리거되고 이 작업은 OS 명령이 완료될 때까지 실행을 차단하기 때문입니다. Freddy는 이러한 경우 시간 지연을 유도하기 위해 ping [-n|-c] 21 127.0.0.1이 포함된 페이로드를 사용합니다.

Collaborator 기반

Collaborator 기반 페이로드는 Burp Suite Collaborator가 생성한 도메인 이름을 확인하기 위해 nslookup 명령을 실행하거나 Java 애플리케이션에서 해당 도메인 이름으로부터 원격 클래스를 로드하려고 시도하여 작동합니다. Freddy는 60초마다 새로운 Collaborator 이슈를 확인하고 이슈 목록에 RCE (Collaborator)로 표시합니다.

지원 대상

현재 다음 대상이 지원됩니다(v2.0에서 새로 추가된 항목은 기울임꼴).

Java

  • BlazeDS AMF 0 (탐지, RCE)
  • BlazeDS AMF 3 (탐지, RCE)
  • BlazeDS AMF X (탐지, RCE)
  • Burlap (탐지, RCE)
  • Castor (탐지, RCE)
  • FlexJson (탐지)
  • Genson (탐지)
  • Hessian (탐지, RCE)
  • Jackson (탐지, RCE)
  • JSON-IO (탐지, RCE)
  • JYAML (탐지, RCE)
  • Kryo (탐지, RCE)
  • Kryo using StdInstantiatorStrategy (탐지, RCE)
  • ObjectInputStream (탐지, RCE)
  • Red5 AMF 0 (탐지, RCE)
  • Red5 AMF 3 (탐지, RCE)
  • SnakeYAML (탐지, RCE)
  • XStream (탐지, RCE)
  • XmlDecoder (탐지, RCE)
  • YAMLBeans (탐지, RCE)

.NET

  • BinaryFormatter (탐지, RCE)
  • DataContractSerializer (탐지, RCE)
  • DataContractJsonSerializer (탐지, RCE)
  • FastJson (탐지, RCE)
  • FsPickler JSON support (탐지)
  • FsPickler XML support (탐지)
  • JavascriptSerializer (탐지, RCE)
  • Json.Net (탐지, RCE)
  • LosFormatter (탐지, RCE) - 자체 모듈이 아니라 ObjectStateFormatter를 통해 지원됨
  • NetDataContractSerializer (탐지, RCE)
  • ObjectStateFormatter (탐지, RCE)
  • SoapFormatter (탐지, RCE)
  • Sweet.Jayson (탐지)
  • XmlSerializer (탐지, RCE)

agpl-3.0 라이선스로 배포됨, 자세한 내용은 LICENSE 참조

Freddy 빌드

Freddy는 gradle 빌드 시스템을 사용합니다. jar를 빌드하려면 루트 디렉터리에서 gradle jar만 실행하면 됩니다. 그러면 테스트가 실행되고 모든 것이 정상이면 build/libs 디렉터리에 jar 파일이 생성됩니다.

도구 다운로드