
이 리포지토리는 YSoNet(YSoSerial.NET)을 사용하여 ASP.NET ViewState를 테스트하는 워크숍을 위한 것입니다.
이 리포지토리는 YSoNet(YSoSerial.NET)을 사용한 ASP.NET ViewState 테스트 워크숍을 위한 것입니다.
추천 자료: ViewState를 통한 ASP.NET 역직렬화 공격
랩 해결을 위한 추천 도구(랩이 설정된 경우):
워크숍 슬라이드: EXPLOITING_KNOWN_MACHINE_WORKSHOP_v1.0_NahamCon2025_slides.pdf
이 랩 환경은 보안 테스트 및 교육 목적으로만 의도적으로 취약하게 구성된 환경입니다.
이 랩은 보안 전문가가 ASP.NET ViewState 취약점에 대한 테스트 역량을 향상시키도록 돕기 위해 설계되었습니다. 책임감 있게 통제된 환경에서만 사용하십시오.
격리된 Windows Server에서 다음 단계를 실행하여 랩 환경을 준비하십시오. 상승된 PowerShell 터미널(관리자 권한으로 실행)을 열고 다음 명령을 실행하십시오:
# Clone the repository (or download and extract the ZIP)
git clone https://github.com/irsdl/viewstate-security-workshop.git
cd viewstate-security-workshop
.\tools\Install-IISAndDotNet.ps1
이 스크립트는 ASP.NET 지원 및 필요한 모든 .NET Framework 버전과 함께 IIS를 설치합니다.
.\tools\Disable-DefenderProtection.ps1
Defender를 왜 비활성화하나요? 이 랩에서는 ViewState 익스플로잇을 통한 명령 실행이 차단되지 않도록 Windows Defender를 비활성화합니다. 이를 통해 엔드포인트 보호의 간섭 없이 성공적인 익스플로잇을 명확히 관찰할 수 있습니다.
중요: 실제 테스트 랩이나 프로덕션 환경에서는 보호 기능을 활성화한 상태로 유지해야 합니다. 이 워크숍의 목표는 취약점의 작동 원리를 이해하는 것입니다. 기술을 익힌 후에는 Defender를 활성화한 상태에서 이러한 공격을 탐지하고 차단하는 연습을 하십시오.
.\import-workshopiis.ps1
이 대화형 스크립트는 IIS에 취약한 워크숍 사이트를 설정합니다. 다음 기본값으로 구성 옵션을 묻는 메시지를 표시합니다:
| 설정 | 기본값 |
|---|---|
| 구성 파일 | .\workshop-iis-config.json |
| 사이트 이름 | workshop |
| 루트 경로 | C:\workshop\websites\wwwdata |
이 스크립트는 다음을 수행합니다:
content 폴더를 사이트 루트 경로에 복사합니다.설정이 완료되면 IIS Manager는 다음과 같이 표시되어야 합니다:

궁금한 독자를 위한 내용:
IIS 및 .NET Framework 구성 요소를 설치하여 랩을 위한 Windows Server를 준비합니다.
위치: tools/Install-IISAndDotNet.ps1
사용법:
# Run as Administrator
.\tools\Install-IISAndDotNet.ps1
설치 항목:
참고: 격리된 서버에 .NET Framework 3.5를 설치하려면 Windows Server ISO를 마운트하고 스크립트에서 소스 기반 설치 옵션의 주석 처리를 해제해야 할 수 있습니다.
랩 환경에서 익스플로잇 도구를 실행할 수 있도록 Windows Defender 보호 기능을 비활성화합니다.
위치: tools/Disable-DefenderProtection.ps1
사용법:
# Run as Administrator
.\tools\Disable-DefenderProtection.ps1
비활성화 항목:
랩 사용 후 Windows Defender 보호 기능을 다시 활성화합니다.
위치: tools/Enable-DefenderProtection.ps1
사용법:
# Run as Administrator
.\tools\Enable-DefenderProtection.ps1
활성화 항목:
워크숍 IIS 사이트 구성을 가져오고 취약한 웹 콘텐츠를 배포하는 대화형 스크립트입니다.
위치: import-workshopiis.ps1
사용법:
# Run as Administrator
.\import-workshopiis.ps1
기능:
content 폴더를 지정된 루트 경로에 복사합니다..NET v2.0 풀 포함).참조 랩 서버에서 내보낸 IIS 사이트 구조를 정의하는 JSON 구성 파일입니다.
위치: workshop-iis-config.json
포함 내용:
/mac/* - MAC 유효성 검사가 활성화된 애플리케이션/nomac/* - MAC 유효성 검사가 없는 애플리케이션v20, v40, v45)이 소프트웨어는 순수하게 학술 연구 및 효과적인 방어 기술 개발을 목적으로 제작되었으며, 명시적으로 승인된 경우를 제외하고 시스템을 공격하는 데 사용하기 위한 것이 아닙니다. 프로젝트 유지관리자는 소프트웨어의 오용에 대해 책임지지 않습니다. 책임감 있게 사용하십시오.
이 소프트웨어는 개인 프로젝트이며, 프로젝트 소유자 및 기여자의 고용주를 포함한 어떤 회사와도 관련이 없습니다.
| HTTP 포트 |
80 |