[TIP] CMD 명령어를 활용한 시스템 분석 – 여러가지 명령어들

coolcommandprompttricks

<CMD 명령어 모음>
모든 명령어는 win + R키나 cmd 명령창에서 실행하실 수 있습니다
아랫쪽에 SYSINTERNALS 도구와 NIRSOFT 도구, 기타 명령어 목록도 있습니다

$$ CMD 명령어
$ .MSC

eventvwr.msc(이벤트뷰어)
gpedit.msc(로컬 그룹 정책 설정)
secpol.msc(로컬 보안 설정)
wmimgmt.msc(WMI 관리자)
certlm.msc (인증서관리자 – 로컬컴퓨터)
certmgr.msc(인증서관리자 – 현재사용자)
fsmgmt.msc(공유폴더)
lusrmgr.msc(로컬 사용자 및 그룹)
printmanagement.msc(프린터 관리)
wf.msc(방화벽고급관리자)
devmgmt.msc (장치 관리자)(= hdwwiz.cpl)
compmgmt.msc(컴퓨터관리)
perfmon.msc(성능모니터)
taskschd.msc(작업 스케쥴러)
comexp.msc (구성요소 COM,COM+,DCOM 서비스)(= dcomcnfg.exe)




$ .EXE

$ winmgmt.exe (WMI 관리도구)
$ color.exe (프롬프트 색상을 바꿉니다)
        # 흰 색상에 검정글씨로 바꿉니다
        $ color f0


$ fsquirt.exe (블루투스를 이용한 파일 송수신)
$ getmac.exe (MAC주소를 출력하는 프로그램)
        # MAC주소를 자세히 확인합니다
        $ getmac.exe /v


$ label.exe (디스크 볼륨레이블 지정)
$ pnputil.exe (pnp 디바이스 열거/설치/삭제)
        # c:\drivers에 모든 패키지를 추가합니다
        $ pnputil.exe -a c:\drivers\*.inf

        # 패키지를 열거합니다
        $ pnputil.exe -e


$ psr.exe (단계레코더)
$ qprocess.exe (tasklist의 단순형 프로그램)
$ launchtm.exe (작업관리자)(taskmgr.exe와 동일합니다)
$ makecab.exe (cab 파일 만들기)
$ narrator.exe (음성지원 나레이터)
$ ping.exe (ping을 날리는 프로그램)
$ pathping.exe (ping + 패킷이 전달되는 루트를 추적합니다)
$ ftp.exe (ftp 클라이언트 프로그램)
$ useraccountcontrolsettings.exe (UAC 세팅)
$ bdehdcfg.exe (bitlocker 드라이브 준비도구)
$ dfrgui.exe (디스크 조각 모음)
$ changepk.exe (윈도우즈 제품키 입력)
$ certutil.exe (인증서 유틸리티)
$ diskpart.exe (디스크 파티션 설정)
$ eventcreate.exe (사용자 지정 이벤트 생성)
$ chkntfs.exe (디스크검사 예약)
        $ chkntfs.exe c: /c

$ chkdsk.exe (디스크 검사)
$ certreq.exe (요청을 인증기관으로 제출하는 유틸리티)
$ mrt.exe(악성소프트웨어 제거도구)
$ cprintui.exe(프린터 UI)
$ sigverif.exe(File Signature Verification Tool)
$ resmon.exe(리소스 모니터)
$ robocopy.exe (견고한 파일복사)
        # desktop에 있는 파일들을 c:\test에 복사합니다
        # 비어있는 디렉토리 제외, Multi Thread 20개 사용, 복사실패 시 1번 재시도, 대기시간 1초, 7개의 하위디렉토리 복사
        $ robocopy.exe C:\Users\edward\Desktop c:\test /S /MT:20 /R:1 /W:1 /LEV:7



$ xcopy.exe (파일복사 프로그램)
        # deskop에 있는 파일들을 c:\test에 복사합니다
        # 하위 디렉토리, 오류가 생겨도 계속 복사, 조용히 복사, 겹치는 파일 묻지 않고 복사, 특성을 복사, 숨겨진파일과 시스템파일 모두 복사합니다
        $ xcopy.exe C:\Users\edward\Desktop c:\test /s /c /q /y /k /h
        # WebcacheV01.dat 파일을 바탕화면에 복사합니다 (taskhost, dllhost 프로세스를 먼저 종료해야합니다)
        $ xcopy.exe /s /h /i /y “%Localappdata%\Microsoft\Windows\Webcache\*.dat” %userprofile%\desktop



$ copy.exe (간단한 파일복사)
$ charmap.exe(문자표)
$ wbemtest.exe(WMI 테스터)
$ magnify.exe(돋보기)
$ setx.exe
        # path 환경변수를 영구적으로 설정합니다
        $ setx.exe path “%path%;경로” /m  

$ shutdown.exe (컴퓨터 종료)
        # 컴퓨터를 바로 강제로 종료합니다
        $ shutdown.exe /s /t 0 /f

        $ shutdown.exe /r /t 0 /f
        $ shutdown.exe /l


$ tlntsvr.exe (텔넷서버실행) (추가기능 설치에서 telnet을 설치해야합니다)
$ tlntadmn.exe (텔넷서버관리) (윈도우8부터는 없어진듯합니다)
$ wbadmin.exe(윈도우 백업관리자)
$ fsutil.exe(디스크 구성 도구)
$ fltmc.exe(필터 드라이버 로딩 언로딩 목록 보기)
$ cleanmgr.exe(디스크 정리)
$ sndvol.exe (스피크 볼륨 콘트롤)
$ wevtutil.exe(이벤트로그 수집도구)
$ slidetoshutdown.exe (화면을 슬라이드해서 종료)
$ esentutl.exe(서버데이터베이스 관리 도구)
        # 해당 .dat 파일의 상태를 확인합니다
        $ esentutl.exe /mh WebCacheV01.dat
        # 해당 .dat 파일이 dirty shutdown 상태이면 clean shutdown 상태로 고쳐줍니다
        $ esentutl.exe /p WebCacheV01.dat



$ mmc.exe (콘솔 루터)
$ msconfig.exe (시스템 구성요소 유틸리티)
$ mstsc.exe (원격 데스크톱 연결)
$ odbcad32.exe(odbc 데이터 원본 관리자)
$ wuapp.exe(윈도우 업데이트)
$ dxdiag.exe (다이렉트X 정보)
$ msinfo32.exe (시스템 정보)
$ slui.exe (라이센스 등록)
$ slmgr.exe (라이센스 등록2)
        $slmgr.exe /ipk /dlv /ato


$ osk.exe (화상 키보드)
$ wmplayer.exe (미디어 플레이어)
$ mkdir.exe (디렉토리 만들기)
$ mklink.exe (바로가기 폴더 만들기)
        # aaa 폴더의 바로가기 폴더 bbb를 만듭니다
        $ mklink.exe /d c:/bbb c:/aaa


$ taskmgr.exe (작업 관리자)
$ cmd.exe (명령 프롬프트)
$ explorer.exe (윈도우 탐색기)
$ rstrui.exe(시스템복원)
$ systeminfo.exe(시스템정보)
$ taskkill.exe (프로세스 종료)
        # 메모장 프로세스를 강제로 자식노드까지 전부 종료합니다
        $ taskkill.exe /f /im “notepad.exe” /t


$ tasklist.exe (프로세스 목록)
        $ tasklist.exe /svc /fi “imagename eq <processname>”
        $ tasklist.exe /svc /fi “services eq <servicename>”
        $ tasklist.exe | find /i “explorer”

$ timeout.exe (지정된 시간을 기다리는 프로그램)
        $ timeout.exe /t 100 /nobreak

$ tskill.exe (간단한 프로세스 종료 프로그램)
$ systempropertiesadvanced.exe (시스템속성 – 고급)
$ systempropertiesdataexecutionprevention.exe (시스템속성 – 데이터실행방지 dep)
$ systempropertiecomputername.exe (시스템속성 – 컴퓨터이름)
$ systempropertieshardware.exe (시스템속성 – 장치관리자)
$ systempropertiesperformance.exe (시스템속성 – 성능옵션)
$ systempropertiesremote.exe (시스템속성 – 원격)
$ gpupdate.exe(그룹 정책 업데이트)
        $ gpupdate.exe /force


$ cmdkey.exe(자격증명 저장 관리)
        $ cmdkey.exe /add:<targetname> /user:<username> /pass:<password>

$ find.exe (특정 문자열 찾기)
        # mysql_ed.sql 파일에서 create가 들어간 구문을 찾습니다
        $ find.exe mysql_ed.sql “create” /n /i

        # abc.txt 파일의 라인 수를 셉니다
        $ find.exe /c /v abc.txt “”

        # 현재 동작하는 프로세스 중 대소문자를 구분하지 않고 sql 글자가 들어간 구문을 검색합니다
        $ tasklist.exe | find.exe /i “sql”



$ optionalfeatures.exe(윈도우 기능 켜기/끄기)
$ forfiles.exe (하위파일까지 전체탐색)(루프돌리는 배치파일 만들 때 유용)
$ regedit.exe (레제스트리 GUI 편집도구)
$ regsvr32.exe (COM 모듈 등록/해제)
$ cleanmgr.exe(Disk Clean Up)
$ rundll32.exe
        # 절전 모드
        $ rundll32.exe powrprof.dll SetSuspendState 0,1,0
        # 환경 변수
        $ rundll32.exe sysdm.cpl EditEnvironmentVariables
        # 화면 잠금
        $ rundll32.exe user32.dll LockWorkStation
        # 자격증명 저장 관리
        $ rundll32.exe keymgr.dll KRShowKeyMgr


$ runas.exe (권한상승 후 프로그램 실행)
$ snippingtool.exe(캡처도구)
$ dcomcnfg.exe(구성요소 COM,COM+,DCOM 서비스)(=comexp.msc)
$ winver.exe(윈도우버전)
$ where.exe (Linux find와 비슷한 명령어, 검색명령어)
        # 바탕화면에서 edw로 시작하는 파일을 전부 검색합니다
        $ where.exe edw* /r c:\users\gyurs\Desktop\


$ control.exe (제어판)
$ sc.exe (서비스컨트롤 명령어)
$ powercfg.exe (전원옵션 명령어)
$ soundrecorder.exe (음성 녹음기)
$ reg.exe (레지스트리 추가/수정 명령어)
        # 해당 레지스트리 값을 추가합니다 (psexec을 사용하기 위해)
        $ reg.exe add hklm\software\microsoft\windows\currentversion\policies\system /v localaccounttokenfilterpolicy /t reg_dword /d 1 /f
        # UAC 세팅을 해제합니다 (재부팅 필요)
        $ reg.exe add hklm\software\microsoft\windows\currentversion\policies\system /v enablelua /t reg_dword /d 0 /f
        # IPC$의 기본공유를 해제합니다
        $ reg.exe add hkey_local_machine\system\currentcontrolset\control\lsa\ /v restrictanonymous /t reg_dword /d 2 /f
        # ADMIN$, C$의 기본공유를 해제합니다
        $ reg.exe add hkey_local_machine\system\currentcontrolset\services\lanmanserver\parameters /v autosharewks /t reg_dword /d 0 /f


$ net.exe (네트워크 설정 명령어)

$ NET STATS
        # 시스템 마지막 부팅시간을 확인합니다
        $ net stats work

$ NET SHARE
        # IPC$ 자동공유를 중지합니다 (C$, ADMIN$도 삭제할 수 있습니다)
        $ net.exe share IPC$ /delete
        # IPC$ 자동공유를 다시 설정합니다
        $ net.exe share IPC$ /grant:gyurse,full

$ NET USER
        # ashley 라는 계정을 생성합니다. 비밀번호는 qwer1234 fullname은 Iron Man, comment는 hello guys, 계정은 활성화상태입니다
        $ net.exe user ashley qwer1234 /add /fullname:”Iron Man” /comment:”hello guys” /active:yes
        
        # ashley의 자세한 정보를 확인합니다
        $ net.exe user ashley

        # ashley 계정을 삭제합니다
        $ net.exe user ashley /delete

$ NET LOCALGROUP
        # ashleygroup 이라는 이름의 localgroup을 생성합니다 comment도 같이 생성합니다
        $ net.exe localgroup ASHLEYGROUP /add /comment:”here is ashley world”

        # ashley 계정을 ASHLEYGROUP 그룹에 추가시킵니다
        $ net.exe localgroup ASHLEYGROUP ashley /add

$ NET USE
        # localhost의 컴퓨터 자체에 계정명 ashley, 패스워드 qwer1234로 접속합니다 (사용자와 연결이 아닙니다)
        $ net.exe use \\localhost\IPC$ /user:ashley qwer1234

        # localhost의 share라는 폴더에 계정명/패스워드로 접속합니다
        $ net.exe use \\localhost\share /user:ashley qwer1234


$ NET TIME
        # localhost의 시간을 확인할 수 있습니다
        $ net time \\localhost




$ msg.exe (네트워크 사용자들에게 메세지 보내는 명령어)
        # 컴퓨터의 모든 사용자들에게 5초동안 유효한 hello guys 메세지를 보냅니다
        $ msg.exe * /v /time:5 hello guys

        # localhost의 모든 세션 사용자들에게 hello guys2 메세지를 보냅니다
        $ msg.exe * /server:localhost /v /w hello guys2



$ subst.exe (디렉토리, 주소를 가상 드라이브로 치환해주는 명령어)
        # c:\temp 경로를 X: 드라이브로 치환합니다
        $ subst.exe X: C:\temp\

        # X 드라이브에 접속합니다
        $ cmd> X:

        # 해당 치환경로를 삭제합니다
        $ subst.exe X: /d




$ netsh.exe (IP, 방화벽 등등 네트워크 설정 명령어 )

$ NETSH ADVFIREWALL (cmd> wf를 통해 확인할 수 있습니다)
        # 새로운 방화벽 허용룰을 추가합니다 이름은 TCP-445이고 tcp 445번 포트의 접속을 허용합니다
        $ netsh.exe advfirewall firewall add rule name=”TCP-445″ dir=in action=allow protocol=tcp localport=445

        # tcp-445라는 이름을 가진 방화벽 정책을 확인합니다
        $ netsh.exe advfirewall firewall show rule name=”tcp-445″

        # 현재 방화벽 설정을 파일로 저장하고 나중에 가져올 수 있습니다
        $ netsh.exe advfirewall export c:\advfirewallpolicy.wfw
        $ netsh.exe advfirewall import c:\advfirewallpolicy.wfw

        # 현재 방화벽 설정을 볼 수 있습니다
        $ netsh.exe advfirewall firewall show rule name=all | more

        # 2000 – 3000 번 포트 접속을 막습니다
        $ netsh.exe advfirewall firewall add rule name=”Block_2000_3000″ dir=in action=block protocol=tcp localport=2000-3000


$ NETSH INTERFACE
        # 네트워크 인터페이스 목록을 확인합니다
        $ netsh.exe interface show interface

        # 모든 네트워크 인터페이스 목록을 확인합니다
        $ netsh.exe interface dump

        # 원격포트가 443번인 모든 ipv4 tcp 연결을 확인합니다
        $ netsh.exe interface ipv4 show tcpconnections remoteport=443

        # ipv4 프로토콜의 여러 매개변수들을 확인합니다
        $ netsh.exe interface ipv4 show global

        # 현재 네트워크카드의 IP 관련된 설정을 확인합니다
        $ netsh.exe interface ipv4 show config

        # IP를 DHCP로 설정합니다
        $ netsh.exe interface ip set address name =”Ethernet” source=dhcp
        $ netsh.exe interface ip set dns “Ethernet” dhcp



$ .CPL (CONTROL PANEL 제어판)

$ powercfg.cpl(전원옵션)
$ firewall.cpl(방화벽 관리)
$ desk.cpl(디스플레이)
$ appwiz.cpl(프로그램추가/제거)
$ main.cpl(마우스)
$ mmsys.cpl(사운드 및 오디오장치)
$ hdwwiz.cpl (장치관리자)(= devmgmt.msc)
$ sysdm.cpl(시스템속성)
$ inetcpl.cpl(인터넷속성)
$ netplwiz.cpl(사용자계정2) (= control userpasswords2)
$ ncpa.cpl(네트워크 연결)
$ wscui.cpl(관리센터)
$ timedate.cpl(날짜 시간 속성)
$ control /name Microsoft.NetworkandSharingCenter(네트워크 공유센터)
$ control desktop(개인 설정)
$ control /name Microsoft.Troubleshooting(문제해결)
$ control userpasswords(사용자 계정)
$ control userpasswords2 (사용자계정2) (= netplwiz)
$ control printers(장치 및 프린터)
$ control folders(폴더옵션)
$ control keyboard(키보드 옵션)
$ control admintools(관리 도구)




———————————————————————————————————–
<SYSINTERNALS & NIRSOFT 명령어>
$$ SYSINTERNALS 명령어

$ psexec.exe (원격명령어 실행 도구)
        # 원격컴퓨터에서 실행해야할 명령어들
        # ADMIN$, IPC$ 공유가 설정되어있어야 합니다
        $ net.exe share

        # 타겟컴퓨터에 해당 레지스트리 값을 추가합니다
        $ reg.exe add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\system /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f

        # 타겟컴퓨터에 445번 포트를 개방합니다
        $ netsh.exe advfirewall firewall add rule name=”TCP-445″ dir=in action=allow protocol=tcp localport=445

        # 타겟컴퓨터 Start -> Run -> secpol.msc -> Local Policies -> Security Options -> Network Access: Sharing > and security model for local accounts > Classic – local users authenticate as themselves

        # 내컴퓨터, psexec 명령어를 사용합니다
        $ psexec \\172.30.1.15 -u <hostname> -p <password> <command>



$$ NIRSOFT 명령어
$ nircmd.exe (nirsoft cmd)
        # 프로그램을 hide 모드로 실행합니다
        $ nircmd.exe exec hide <processname>




———————————————————————————————————-
<기타 여러 프로그램들 명령어>
$$ 기타 여러 프로그램들 명령어

$ pscp.exe (putty 파일 전송 프로그램)
        # pscp를 이용해 tempuser 계정과 qwer1234 비밀번호를 사용해서 원격에  tigerk 하위폴더의 모든 내용을 내 컴퓨터의 바탕화면에 복사합니다
        $ pscp.exe -r -pw qwer1234 [email protected]:C:\\Users\\tigerk0430\\Desktop\\tigerk c:\\users\\gyurs\\Desktop

 


제공 및 출처: http://blog.naver.com/gyurse

 

About SharedIT

SharedIT

Leave a Reply

6 개의 댓글이 있습니다 - "[TIP] CMD 명령어를 활용한 시스템 분석 – 여러가지 명령어들"

메일 알림 설정
정렬:   최신 | 오래된 | 추천
land4all

Windows에서의 명령줄 실행은 WSCC 사용도 권장해 드립니다.
WSCC(Windows System Control Center)는
Windows, Sysinternals, Nirsoft의 명령줄 실행 유틸리티들을
사용하기 쉽게 GUI에서 선택 가능하도록 만든 툴입니다.
Portable이라 USB 등에 넣어가지고 다니며 사용해도 편리합니다.

원조만두

좋은 정리 감사합니다

단박

역시 배움은 끝이 없어요…..

김봉주

엄청나네요.. 몇가지만 외워도 업무에 큰 도움이 될 것 같습니다.
appwiz.cpl 은 찾고있던건데 좋네요.
services.msc 를 제일 많이 썼는데.. 하나씩 자주 쓰는걸 늘려야겠네요 ^^
정보 감사합니다.

전산초보임니다

몰랏던 명령어들이 많이 있네요^^ 감사합니다!

wansoo

고맙습니다~ 정말 도움되는 내용이네요~

wpDiscuz