内网渗透测试思路-FREEBUF

(在拿到webshell的时候,想办法获取系统信息拿到系统权限)

一、通过常规web渗透,已经拿到webshell。那么接下来作重要的就是探测系统信息,提权,针对windows想办法开启远程桌面连接,针对linux想办法使用反弹shell来本地连接。

① Webshell应该都可以调用系统cmd执行一些简单的命令,那么whoami(查看当前权限),netuser(查看用户/组),systeminfo(查看系统补丁修复情况)等常见命令应该是首先被执行

探测的。

I: 不具备系统权限:

①  Serv-U提权,现在很多的webshell都集成了Serv-U一键提权功能,只需要点击一下就拥有了系统权限,简单快速。

②  SQL Server提权,利用webshell的目录翻阅功能,查找网站根目录下的数据库配置文件,以php为例则为config.php;查看文件内容一般都会发现数据库的登陆信息用户名/密码,(密码md5或者其他的加密方式解密一下即可),通过webshell或者数据库端口开放的话利用数据库连接工具Navicat等工具来连接数据库。

连接数据库检查xp_cmdshell是否存在,扩展存储过程是否打开,再利用xp_cmdshell来执行系统命令,添加用户、开启远程桌面等。

常用命令:

select count(*) from master.dbo.sysobjectswhere xtype = ‘x’ and name=’xp_cmdshell’ 返回值是1就是有xp_cmdshell存储过程
    exec master.dbo.sp_addextendedproc ‘xp_cmdshell’,’xplog70.dll’添加cmdshell(Sqlserver 2000)
    exec sp_configure ‘show advanced options’,1;当设置advanced options参数为1时,系统才允许修改高级选项;
    reconfigure;
    exec sp_configure ‘xp_cmdshell’,1;  开启扩展存储过程;
    reconfigure; (Sqlserver 2005)
通过xp_cmdshell来执行命令:
    exec master.dbo.xp_cmdshell ‘命令’

③ MYSQL提权,如SQL Server一样,首先找到数据库连接文件来找到数据库的登陆信息,登陆MYSQL数据库,利用MYSQL的Create Function来添加自定义函数,向mysql添加命令执行函数来执行系统命令。需要使用的文件为udf.dll。

也有一些自动化工具可以完成以上操作。

II:具备系统权限:

直接通过wehshell来执行相关命令,添加用户等操作。

② 可能遇到的障碍:

1. 无法执行cmd命令:

有可能执行的命令不具备执行权限或者system32/cmd文件自身拒绝被调用;一般可以通过自己上传cmd命令程序来解决,为当前用户权限。

2. 添加用户的命令net user /add不能被执行:

一般是由于net.exe文件不存在或者拒绝被调用导致,可通过上传net.exe文件来解决,包括tasklist等命令无法被执行时,都可以通过上传相应可执行文件来解决。

3. SQL Server扩展存储过程无法开启:

在管理员做过数据库加固的情况下,xplog70.dll文件会被管理员删除,从而不能够成功开启数据库扩展存储过程,解决方案为上传xplog70.dll文件。

4. 不能在目录下上传文件,或者上传的文件执行权限不够:

根据文件目录的执行权限,首先查找可读、可写目录,假如不好找的话,一般建议将文件上传到相应盘符的recycler文件夹内,这个文件夹在每个盘下面默认都会存在,并且具有可读、写、执行权限。

5. 新建用户成功,但是无法确定管理员组:

没有明确标识的administrator组,在新建用户加入管理员组的过成中,系统管理员已经将管理员组更名,此时需要查询管理员组名称,再在相应的组中加入。

6. 3389端口虽然打开,但是远程桌面无法连接:

一般这种情况是由于windows的防火墙进行的端口限制或者在远端服务器网络出口有安全设备如防火墙进行了外联端口限制,这个时候就要祭出前辈大神的LCX端口转发工具,对相应端口进行转发到常规使用的端口上,再从外部连接转发后的端口。

二、 没有通过常规渗透拿到webshell,但是由于中间件的配置失误,可以上传shell。

Apache,Tomcat等中间件以system权限运行,存在管理控制台manager,尝试弱口令或者暴力破解登入,可以通过控制台上传jsp、war等格式的webshell,从而进一步执行系统命令。

三、Web存在sql注入,数据库为SQLServer,通过SQL Server的特性,开启扩展存储过程XP_cmdshell,从而添加管理员用户/组,开启远程桌面。或者MYSQL存在web sql中注入,则不通过webshell翻阅文件来获取数据库连接密码,直接从外部利用数据库连接工具来进行提权。

四、利用系统已知漏洞来提权,通过wehsell执行systeminfo来确定系统打补丁的情况,从而使用metasploit来溢出提权,选择payloads来开启远程桌面。在windows下比较出名的漏洞如MS-08067,MS11-080,MS11-046等。

五、对于Linux系统:

① 在拿到webshell的前提下,一般的流程为使用相应exp或者执行上传的脚本,反弹shell出来在本地进行连接,运行提权程序获得root权限。

如windows下一样,在Linux下首先通过webshell执行whoami来确定当前用户是什么用户,执行uname–r来确定Linux的内核版本,依照此版本来找对应的exp;当然对应很多版本的Linux内核,都是没有exp来对用执行的,很多情况下只能无奈止步或者另辟蹊径。常用工具nc。

② 可能遇到的障碍:

1.反弹shell的时候在本地无法正常连接:

一般这种情况是由于Linux的iptables防火墙进行的端口限制或者在远端服务器网络出口有安全设备如防火墙进行了外联端口限制,这个时候就要祭出前辈大神的LCX端口转发工具,对相应端口进行转发到常规使用的端口上。

2.提权exp或者自己远程编译的脚本无法执行:

检查是否当前文件具有可读、写、执行权限,尝试修改目录、文件的权限,使用chmod u+x,假如无法修改权限的话就寻找具有相应权限的目录重新上传执行。

六、关于一句话木马:

使用webshell方式固然好处是强大的各种功能,但是webshell的缺点体现在:

1.很容易被管理员发现清除,
2.复杂冗余的功能根据不同的情况可能无法使用,
3.在web应用中上传webshell的时候困难重重。

对于一句话木马,在web应用中可以根据情况直接插入,对应的菜刀chopper可以轻松连接一句话翻阅目录,并且可以进行数据库管理和自定义cmd路径执行。好处主要在于不容易被查杀,并且不容易被管理员发现。在上传了webshell后,在可读可写的目录下新建一句话木马连接文件也不失为一种保存后门的方式。同时注意隐藏,将一句话木马的文件名改名为config.php , run.php等系统文件名更具有迷惑性。

0×02 隔山打牛

(在拿到一台服务器的时候,拿下内网更多的服务器,更有用的信息)

1. 信息获取

信息获取总是第一步执行的操作,利用管理员的疏忽或者内网机器的弱口令来发现更多的信息。

① 可以使用工具pwdump来抓取管理员hash,配合彩虹表或者在线hash破解,获得管理员的明文密码,这个可以作为自己的密码表,在进行内网其他机器的登陆时尝试。

② 查看远程桌面的连接信息,一般通过远程桌面经常连接的机器会在该程序打开时候的下拉菜单中保存,如果管理员选择的是记住密码的话,那么就轻松跳转其他机器。

③ 假如存在数据库管理工具,ftp管理工具等,如Navicat,SecureCRT,flashfxp等,查看是否是保存的密码,尝试登陆。

④ 各款浏览器的保存登陆密码,作为自己的密码表,在进行内网其他机器的登陆时尝试。

⑤ 有无VPN连接信息。

2. 内网探测

① 通过cmd下执行命令arp –a,查看相邻主机IP。

② 通过上传一些工具,如Cain,可以探测本地程序缓存的密码,通过嗅探器可以嗅探到相邻机器的username和password。

③ 通过上传一些工具,如HScan,可以探测同一个段内存活机器的IP,端口,开启的服务等信息,包括存活机器的弱口令。

④ 通过本地远程桌面跳转到相应的服务器上。

⑤ 如web渗透一样,在进行端口/服务探测时,可以根据探测到的服务版本信息,根据已知的漏洞来使用matesploit进行溢出攻击,从而获得对应服务器权限。 

3. 找到交换机/路由器

通过内网端口/IP扫描找到类似交换机/F5的设备,网络设备没有特殊安全加固的话一般没有设置权限密码或者使用默认密码/弱口令,比较好突破。也可以下载路由器/交换机的配置文件,从而读取到登陆密码。拿到网络设备以后该网段的拓扑结构基本上能做到心中有数。

对内网渗透而言,更多的是利用管理员或者用户组的疏漏而进行的深入,具有较大的随机性,很多情况下也是无疾而终,无奈的终结于此。不过思路和方法是多变的,正所谓没有绕不过的防火墙,终归会有更好的方法出现来解决更多的问题。

对于外网——内网渗透思路系列,并不是倡导一个如何有效入侵的方案,而是通过种种思路的总结来帮助我们的管理员同志更好地抵御外界的威胁,同时我们也倡导大家做有社会使命感的白帽子。在技术方面共同进步,不浮于表面,更多的去进行学习漏洞挖掘分析等更深层次的技术细节,了解漏洞的原理,为提高我们的技术水平而不懈努力。

时间: 2024-10-29 10:46:49

内网渗透测试思路-FREEBUF的相关文章

内网渗透测试 3389 爆破

kali linux 下渗透测试,3389 批量爆破神器 hydra -M target.txt rdp -L userlist.txt -P passwordlist.txt -V

内网渗透思路

Sky's自留地 关注互联网安全,关注安全&攻击技术. 搜索关键字搜索 首页申请链接 内网渗透测试思路[转自网络] 作者: sky 孵化于: March 15, 2015 家属: 学习类,技术类 访问: 2,136 次 写在前面渗透测试是门技术,也是一门艺术.这门技术(艺术)一开始也不是每个人都会的,正所谓没有人一出生就会走路,从不懂到入门到深谙,一步步慢慢来,每个人都是这样:但是在这个过程中,思路无疑是最重要的,没有做不到只有想不到,就跟咱们高中解题时有了思路就迎刃而解一样,手里拿着铲子(技巧

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

写在前面 每个人都有自己的思路和技巧,以前遇到一些linux的环境.这次找来一个站点来进行内网,写下自己的想法 目标环境 1.linux  2.6.32-358  cpu 架构(x86_64)AND发行版 Red Hat Enterprise Linux Server release 6.4 2.DMZ+防火墙+行为监控,外网开放8080 8084 ... 3.服务器有utibadn用户的权限一枚 Shell具体怎么拿到的就不说了,记录下自己比较思路坎坷的一次内网渗透以作回顾: 外网nmap得到

内网渗透学习

在乌云看到了这篇文章,看的我太爽了. 从TCL某漏洞看内网渗透教学分享之内网信息探测和后渗透准备  披露状态: 2015-02-18: 细节已通知厂商并且等待厂商处理中2015-02-27: 厂商已经确认,细节仅向厂商公开2015-03-09: 细节向核心白帽子及相关领域专家公开2015-03-19: 细节向普通白帽子公开2015-03-29: 细节向实习白帽子公开2015-04-04: 细节向公众公开 简要描述: 本来打算发人人网的,但是苦逼的是我刚进去内网就貌似被t出来了,服务器直接宕了,等

DHCP服务器内网攻击测试

原文地址:http://www.freebuf.com/articles/network/74995.html 通常内网渗透都是基于ARP的攻击,但ARP攻击对内网的负担太重,很容易被发现.今天讲的是基于DHCP协议的攻击. 基于DHCP的攻击理解起来很简单,首先伪造Mac地址耗竭正常的DHCP服务器的IP地址,然后黑客用自己的主机伪造一个DHCP服务器,那么新连上内网的主机只能使用流氓DHCP服务器分配的IP,这样黑客的主机就变成了内网网关,可以借此控制内网中其他主机的网络流量. 攻击环境 操

内网渗透基础:内网、域、工作组、域控概念介绍

一.什么是内网 局域网(Local Area Network, LAN),又称内网,是指在某一区域内由多台计算机互联成的计算机组. 局域网可以实现文件管理.应用软件共享.打印机共享.扫描仪共享.工作组内的日程安排.电子邮件和传真通信服务等功能.局域网严格意义上是封闭型的.它可以由办公室内几台甚至上千台计算机组成.决定局域网的主要技术要素为:网络拓扑,传输介质与介质访问控制方法. 局域网标准定义了传输媒介.编码和介质访问等底层(一二层)功能.要使数据通过复杂的网络结构传输到达目的地,还需要具有寻址

内网渗透+基础+工具使用=自己理解

目录 1.代理 2.内网命令 3.抓密码 4.ipc$共享目录利用 5.端口漏洞 6.溢出 1.代理 端口转发工具有很多比如:rebind2  eDuh  ssock  reDuh  lcx  socks5 等--.. 下面介绍我比较喜欢的2款工具LCX+ socks5 1.lcx 路由器加端口 TCP协议 ,固定IP地址本机 大马设置 Local Ip : 转发ip Local Port : 转发端口 Remote Ip :本机ip (ip138.com外网ip) Remote Port :

安天实战课题研究2017年第二期内网渗透技术题目

安天实战课题研究2017年第二期内网渗透技术题目拟研究以下题目:1.使用NTScan扫描内网Windows口令(已经完成)2.使用Hscan进行内网口令扫描 (已经完成)3.扫描Mysql口令 (已经完成)4.扫描MSSQL口令 (已经完成)5.使用SQLTools查看SQL Server数据库及提权 (已经完成)6.内网信息收集工具7.内网信息自动收集脚本8.内网密码获取工具9.服务器明文密码及hash获取10.Windows及Linux密码哈希破解11.远程终端使用攻略 (已经完成)12.记

浅谈内网渗透

引子离上篇文章的时间过去很久了,答应写一篇内网渗透的文章,今天抽点时间,把这个坑给添平了吧.标题是浅谈,所以我不认为自己能在内网渗透写的有多深入.渗透这玩意更多是经验,积累的多了自然水到渠成.而且我个人认为很多前辈人物都已经写的很好了,我这里纯粹抛砖引玉,把前辈级人物的经验集成在一起,也算基础篇吧.如果有不足的地方或者有更好的实现方法,欢迎随时交流.交流方式就以邮件吧,邮件地址在文章结束处,上次公开的Q加了很多人,即时通讯=即时打扰,过段时间集中清理,如果不小心被清理了,诸位勿怪,这里算是提前打