최초작성일 : 2014/08/25


발생 위치
N 사이트

취약점 개요
XSS : 검증되지 않은 외부 입력 값에 의해 사용자 브라우저에서 악의적인 스크립트가 실행될 수 있는 취약점

취약점 종류
Reflected XSS

발생 원인
사용자 입력 값 검증 미흡


* KISA를 통해 해당 취약점을 신고하여, 현재는 취약점이 제거 되었음




최초작성일 : 2015/05/12 - 이미지 작업 필요

Email-Worm.Win32.Runouce.b 악성코드 동적분석


1. 온라인 분석 결과


1.1 VirusTotal 분석 결과 (https://www.virustotal.com)


1.1.1 악성 코드 진단 명

AVG                Win32/Chir.B@mm

AhnLab-V3           Win32/ChiHack.6652

Avast               Win32:Runonce [Trj]

ClamAV               WIN.Worm.Brontok

Kaspersky            Email-Worm.Win32.Runouce.b

McAfee               W32/Chir.b@MM


1.1.2 악성코드 첫 분석 날짜

2011-01-2506:31:19



1.3 해당 악성 파일의 분석 자료는 구글 참고




2. File 분석


2.1 파일 생성


C:\WINDOWS\system32\runouce.exe 파일 생성

runouce.exe 파일 확인

디스크의 htm 파일이 존재하는 폴더 위치에 readme.eml 파일 생성


2.2 파일 변조


디스크의 exe 파일들을 찾아서 변조함

아래와 같이 exe 내부에 eml 메일 코드 삽입

<현재 변조된 exe 파일 해당 글에서는 분석 제외>


디스크의 htm 파일들을 찾아서 변조함

아래와 같이 htm 파일 하단에 script를 삽입하여 htm 파일 실행 시 readme.eml을 실행하도록 구현함



2.3 실행되는 파일


runouce.exe 실행

- runouce는 exe, htm 파일들을 변조하고, 디스크의 디렉토리에 eml 파일을 생성

- 같은 subnet의 쓰기 가능한 공유 폴더를 찾아 eml 파일을 생성함

- Process kill을 방지하고. 부팅시 자동실행할 Registry가 삭제될경우 복구를 수행

- 재부팅 시 마다 실행됨



3. Registry 분석


3.1 Registry 등록


HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\Runonce에 runouce.exe 를 등록하여 부팅시 마다 자동실행



4. Network 분석



4.1 공유디렉토리 접근


같은 subnet의 모든 공유 디렉토리를 검사하여 패스워드 없이 쓰기가 허용된 공유 폴더에 

<ComputerName>.eml 파일을 생성함

- 해당 eml 실행시 첨부파일에 악성코드가 삽입되어 있음

- script가 실행되는 환경이면 자동 실행 시도함



5. 백신 검사



5.1 eml 파일 백신 검사


eml 파일 ALYAC으로 검사했지만 악성코드로 인식하지는 않음

- 변조된 exe 파일 및 runouce.exe 파일은 악성코드로 인식



5.2 eml 파일 일부 내용




Apache 2

HTTP Method 제한을 할 경우 다수의 문서에서 다음과 같이 하라고 되어 있다.


- 허용 방식

<Directory />

   <LimitExcept GET POST> // 해당 Method 이외는 모두 차단

       Order deny,allow

       Deny from all

   </LimitExcept>

</Directory>


또는


- 차단 방식

<Directory />

<Limit PUT DELETE CONNECT OPTIONS> // 해당 메소드 이외는 모두 허용

        Order deny,allow

        Deny from all

</Limit>

</Directory>


영문 자료들도 마찬가지지만.. 직접 해보면 잘 않된다.. -_-


<LimitExcept GET POST>

     deny from all

</LimitExcept>


이런식으로 하면 먼가 될 듯하면서... 오류는 발생하지 않고 마치 GET Response를 발생시킨다.

깔끔하게 mod_rewrite를 사용하면 되겠지만, 사용하지 못할 경우 다음과 같이 하자


<Limit OPTIONS>

  Require valid-user

</Limit>


이렇게 설정하면 OPTIONS Method를 요청하면 500 Error 가 발생하면서 해당 Method의 사용이 차단된다.


+ Recent posts