본문 바로가기
분석 TIP/프로텍션

Powershell 난독화 풀기

by 두유노우컴퓨터 2025. 4. 8.

출처 : atshai

 

1. 한 줄짜리 코드 줄바꿈(Beautify)

 

난독화 스크립트는 보통 한줄로 되어 있으며, 이를 보기 편하게 수동으로 줄바꿈을 해줘야 한다.

  • ; 또는 | 기준으로 줄 나눔
  • if, function, foreach, while 등 앞에 줄바꿈
  • 중괄호 {} 들여쓰기로 정리

 

2. 동적 실행 함수 출력 함수로 전환

 

Write-Host / Write-Output으로 중간 값 출력

Invoke-Expression (IEX) → Write-Output로 교체

. (dot-sorucing) Write-Host로 교체

 


 

dot-sourcing (.) 이란?

더보기

현재 세션에서 실행하면서, 내부 함수나 변수를 현재 스코프에 그대로 가져오는 것이다. 

. ([scriptblock]::Create($evilCode))에 담긴 코드를 현재 세션에서 바로 실행시킬 경우 Write-Host $evilCode 이 명령으로 바꿔서 콘솔에서 안전하게 출력하고 분석 가능하다.

Write-Host vs Write-Output 차이는?

더보기

Write-Host는 단순히 콘솔에 보여주기만 하고, 변수에 아무것도 안남고,
Write-Output은 실제로 값을 반환해서 변수로 저장, 파이프라인(|)으로 전달 가능하다.

 

'분석 TIP > 프로텍션' 카테고리의 다른 글

Themida 도구 언패킹 방법  (0) 2025.04.29
VMProtect 메뉴얼 언패킹 방법  (0) 2025.04.28
VBScript 난독화 풀기  (0) 2025.04.06
도구로 쉽게 난독화 풀기 예시  (0) 2025.04.02
JavaScript 난독화 풀기  (0) 2025.04.01