
Ivanti Connect Around 공격 체인에 대한 완화 검증 유틸리티입니다. 여러 검사를 실행합니다. CVE-2023-46805, CVE-2024-21887.
Connect Around 공격 체인(CVE-2023-46805 및 CVE-2024-21887 관련)은 Ivanti Connect Secure 및 Policy Secure 어플라이언스에 심각한 위협을 제기합니다. 이 공격 체인은 취약한 시스템에서 무단 액세스 및 명령 실행을 가능하게 합니다. CVE-2023-46805는 공격자가 인증 제어를 우회할 수 있게 하며, CVE-2024-21887(명령 주입 취약점)은 전자와 결합될 때 인증 없이도 악용될 수 있습니다. 이 두 가지 취약점은 Ivanti 제품을 사용하는 조직이 Ivanti 커뮤니티 포럼에 설명된 완화 조치를 긴급히 적용해야 함을 요구합니다.
조직이 완화 상태를 확인해야 하는 필요에 대응하여 Ivanti Connect Around 취약점 검사기가 개발되었습니다. 이 스크립트는 Ivanti Connect Secure 및 Policy Secure 어플라이언스에서 Connect Around 공격 체인과 관련된 취약점을 평가하기 위해 설계되었습니다. 이러한 취약점의 존재를 확인하기 위해 검사를 수행하고 결과를 CSV 형식으로 출력합니다. 포괄적이고 신뢰할 수 있는 평가를 제공하기 위해 여러 완화 검증 방법론이 사용됩니다.
참고: 이 스크립트는 CVE-2024-21888 또는 CVE-2024-21893을 검증하지 않습니다.
이 스크립트는 Ivanti Connect Secure 시스템의 보안 상태를 평가하기 위해 다양한 검사를 수행합니다. 각 검사는 정보 보안 커뮤니티의 연구에서 채택된 특정 방법론을 기반으로 합니다.
/api/v1/configuration/users/user-roles/user-role/rest-userrole1/web/web-bookmarks/bookmark 엔드포인트에 인증 없이 요청을 보냅니다./api/v1/system/system-information URI에 접근을 시도합니다./admin/options/ URI에 접근을 시도합니다.각 검사는 잠재적인 취약점에 대한 통찰력을 제공합니다. "취약함"은 확인된 취약점을 나타내며, "완화됨" 또는 "취약하지 않음"은 시스템이 테스트 중인 특정 취약점에 대해 안전한 것으로 보임을 의미합니다.
스크립트는 각 검사를 특정 상태 유형으로 분류하여 스캔된 호스트의 보안 태세에 대한 통찰력을 제공합니다. 각 상태 유형에 대한 설명은 다음과 같습니다.
각 상태는 확인된 취약점과 관련된 시스템의 보안 태세에 대한 스냅샷을 제공합니다. 사용자는 이러한 상태를 초기 지표로 간주하고 필요한 경우 추가 수동 조사를 통해 시스템의 실제 보안 상태를 확인해야 합니다.
requests 모듈urllib3 모듈colorama 모듈스크립트를 실행하려면 다음 명령을 사용하십시오.
python ivanti_scan.py -i [input_file]
선택적으로 추가 인수와 함께 실행:
python ivanti_scan.py -i [input_file] -o [output_file] -t [number_of_threads] -p [port1 port2 ...] --color
다음 옵션 중 하나를 사용하여 테스트할 대상을 지정하십시오.
-i 또는 --input: 대상 목록이 포함된 입력 파일의 경로.-u 또는 --url: 테스트할 단일 URL 문자열.-o 또는 --output: 선택 사항. 출력 CSV 파일의 이름입니다. 기본값은 [current_date_time]_results.csv입니다.-t 또는 --threads: 선택 사항. 동시 실행에 사용할 스레드 수입니다. 기본값은 20입니다.-p 또는 --ports: 선택 사항. 확인할 포트를 지정합니다(예: 80 443). 기본값은 포트 80과 443을 확인합니다.-a 또는 --user-agent: 선택 사항. 사용자 에이전트 문자열을 지정합니다. 기본값: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.3-c 또는 --color: 선택 사항. colorama가 설치된 경우 색상 코드 출력을 활성화합니다.기여를 환영합니다! 기여하려는 경우 다음 방법으로 도움을 주실 수 있습니다.
main 브랜치에서 새 브랜치를 생성하십시오.이 프로젝트에 기여를 고려해 주셔서 감사합니다.
이 도구는 개인 및 조직이 자체 환경 내에서 취약점 완화를 검증하기 위해 설계되었습니다. 특히 보안 테스트에 대한 명시적 허가가 있는 Ivanti Connect Secure 어플라이언스에서 사용하기 위한 것입니다.
이 도구를 사용함으로써 귀하는 이 조건을 인정하고 동의하는 것으로 간주됩니다.
이 프로젝트는 윤리적 사용 조항이 포함된 MIT 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 LICENSE 파일을 참조하십시오.
이 프로젝트는 사이버 보안 분야의 여러 저명한 그룹 및 개인이 개발한 연구와 방법론을 활용합니다. 다음 분들께 감사드립니다.
WatchTowr Labs: Ivanti Connect Secure 취약점에 대한 통찰력 있는 연구를 해주셨습니다. 그들의 작업은 웹 접근 검사 방법론을 개발하는 데 중요한 역할을 했습니다.
Rapid7의 Stephen Fewer: Metasploit 모듈에 대한 그의 작업은 귀중한 통찰력을 제공했습니다.
AttackerKB의 Rapid7: 인증 우회 기술에 대한 연구는 이 스크립트에 많은 정보를 제공했습니다.
Assetnote: /admin/options/를 신뢰할 수 있는 테스트 방법으로 인식한 것은 완화 적용 여부를 판단하는 데 도움이 되었습니다.
이 도구 개발에 큰 도움을 주신 사이버 보안 분야의 이 그룹과 개인에게 특별히 감사드립니다.
Chris Farrell은 철저한 분석과 포괄적인 솔루션을 통해 사이버 보안을 강화하는 데 전념하는 취약점 연구원입니다.
경력에는 취약점 관리, vCISO, 수석 침투 테스터, 사고 대응 팀장, ISSO 등이 포함됩니다.