상세 컨텐츠

본문 제목

공격자들이 자주 사용하는 Windows 명령어

국내외 보안동향

by 알약(Alyac) 2017. 7. 4. 15:51

본문

Windows 시스템 중에는 기본적으로 설치되어 있는 명령어들이 있습니다. 하지만 매우 적은 부분들만 일반사용자들에게 사용되고 있습니다. 


공격자들은 이러한 Windows 명령어들을 시스템들의 정보를 획득하고 악성코드를 유포하는데 악용하고 있습니다. 


여기서 주의할 점은, 일반 사용자들이 사용하는 윈도우 명령어와 공격자들이 사용하는 윈도우 명령어에는 차이가 있다는 점입니다. 


그렇기 때문에, 공격자들이 Windows 시스템을 공격할 때 사용하는 Windows명령어을 알고, 일반 사용자들이 사용하지 않는 명령어들의 비활성화를 통하여 공격 위협을 낮출 수 있습니다. 


Remote Access Tool/Trojan-RAT는 일반적으로 함수를 이용하여 실행시키고 원격 서버로부터 명령어를 절달받습니다. 즉, 이런 함수의 도움을 통하여 공격자는 원격에서 임의의 윈도우 명령어를 실행할 수 있는 것입니다.


공격자는 악성코드를 성공적으로 사용자 PC에 설치한 후, 다음과 같은 순서로 감염 PC와 동일한 네트워크에 위치하고 있는 다른 기기들의 감염 및 정보 유출들 시도합니다. 


1) 초기 탐색 : 감염 PC정보 수집

2) 탐색 : 감염 PC에 저장된 중요 정보를 수집하고, 동일 네트워크 상 다른 디바이스 스캔

3) 유포 : 다른 악성코드를 통하여 감염 PC를 추가적으로 감염시키거나, 다른 디바이스 감염 시도


위에 언급한 모든 단계들에서 Windows 명령어가 사용되며, 각 단계에서 사용되는 Windows명령어에 대해서 조금 더 알아보겠습니다. 



초기 탐색 


다음 명령어들은 공격자들이 감염된 PC와 관련된 정보를 수집할 때 주로 사용하는 명령어들 입니다. “Times executed”의 통계에서, 3개의 각기 다른 공격 조직들의 C&C서버 중 사용된 Windows 명령어들의 집합이기도 합니다. 


<이미지 출처 : http://blog.jpcert.or.jp/2016/01/windows-commands-abused-by-attackers.html>


공격자들이 사용하는 "tasklist", "ver", "ipconfig" 및 "systeminfo"등의 명령어를 통하여 네트워크, 프로세스, os등 감염 PC의 정보를 획득하고, 이러한 정보들은 가상머신 여부를 판단하는데 사용되기도 합니다. 



탐색 


다음 명령어들은 공격자들이 중요 정보 혹은 동일 네트워크에 존재하는 다른 호스트를 찾을 때 주로 사용하는 명령어들 입니다. 


<이미지 출처 : http://blog.jpcert.or.jp/2016/01/windows-commands-abused-by-attackers.html>


공격자는 "dir"과 "type"을 통하여 파일을 검색합니다. 또한 "dir" 명령어의 파라미터를 통하여 감염 PC의 파일들을 검색하기도 합니다. 


"net"명령어를 통해 네트워크 정보를 획득하기도 합니다. 


net view : 지정된 PC와 공유된 영역, 호스트 혹은 자원 정보를 얻는데 사용 

net user : 시스템 계정 관련 정보를 얻는데 사용

net localgroup : 로컬 그룹에 속해져 있는 사용자 리스트 얻는데 사용

net group : 특정 영역에 속해있는 사용자 리스트를 얻는데 사용

net use : 공유 폴더 접근


이밖에도 다음 명령어들을 사용하면 Active Directory가 활성화 된 환경에서 사용이 가능하며, 이 명령어들은 Windows Server 중에서 사용할 수 있습니다. Windows7과 Windows8에는 존재하지 않지만, 공격자가 수동으로 설치 후 사용할 수 있습니다. 


dsquery : Active Directory중 계정 검색

csvde : Active Firectory중 계정정보 획득



유포


원격 호스크 접근 및 동일 네트워크 상 다른 디바이스에 접근하기 위하여, 다음과 같은 명령어를 사용합니다. 


<이미지 출처 : http://blog.jpcert.or.jp/2016/01/windows-commands-abused-by-attackers.html>


"at"과  "wmic"는 주로 원격호스트에서 악성코드를 실행하는데 사용됩니다. 


"at" 명령어를 이용하여, 공격자는 원격호스트에서 예약작업을 통해 호스트에 연결할 수 있습니다. 


at \\[remote host name or IP address] 12:00 cmd /c "C:\windows\temp\mal.exe"


동일하게, "wmic" 명령어를 통해, 공격자는 원격호스트에 임의의 명령을 실행시킬 수 있습니다. 


wmic /node:[IP address] /user:”[user name]” /password:”[password]” process call create “cmd /c c:\Windows\System32\net.exe user”



불필요한 Windows 명령어 비활성화 


일반 사용자들이 거의 사용하지 않은 Windows 명령어들은 비활성화를 시켜놓는 것이 좋습니다. 


명령어 비활성화는 AppLocker에서 규칙을 만들어 설정하면 되며, 자세한 내용은 MS 홈페이지를 참고하시면 됩니다. (▶ 참고 )



또한 AppLocker의 이벤트 로그 기능을 활성화 시켜놓는다면, 윈도우 명령어 실행 혹은 실행 거부된 이력이 로그로 남기 때문에, 침해사고 조사에 유용한 자료가 될 수 있습니다. 






출처 :

http://blog.jpcert.or.jp/2016/01/windows-commands-abused-by-attackers.html

관련글 더보기

댓글 영역