大纲

ST2漏洞  (Struts2)

反序列漏洞              网站容器,中间键

其他漏洞

Struts2漏洞

简介: Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts 2有着太大的变化,但是相对于WebWork,Struts 2的变化很小。(百度百科)

(注:.do或.action可能存在该框架)

漏洞挖掘

单个目标站进行测试

工具爬行

找到存在漏洞的地址,例如:xx.action,用相关的工具进行测试

一般存在于登录,注册,留言,提交数据,进行数据交互的地方等

  (一般使用的工具是k8_struts2_EXP.exe)

批量查找利用

  URL采集相关关键字  site:xx.com inurl:.action

Java反序列化漏洞

简介:序列化就是把对象转换成字节流,便于保存在内存,文件,数据库中;反序列化即逆过程,由字节流还原成对象。Java中的objectoutputstream类的writeobject()方法可以实现序列化,类objectinputstream类的readobject()方法用于法序列化。

工具

Java反序列化终极测试工具 –powered by STG-G哥

其他漏洞

Tomcat部署漏洞

访问Tomcat manager页面

尝试弱口令爆破,工具:伊美式Apache Tomcat http://yimeishi.icoc.cc

登录管理界面

部署war文件

getshell

weblogic攻击

批量扫描weblogic缺省的web管理端口(http为7001,https为7002),开放这些端口的一般都是有安装weblogic的。

Google搜索关键字“weblogic server administrator console inurl:console”URL后面是console结尾的一般为目标。

在找到的目标URL后面加上console,回车后自动跳到管理登录界面

尝试弱口令

用户名,密码:weblogic,weblogic;system,system;portaladmin,portaladmin;guest,guest

登录后找到“mydomain”->“deployments”->“web application modules”->“deploy new web application mondule”

再点“upload your file(s)”,在跳转后的页面上传war包

其他漏洞详解

越权漏洞

逻辑漏洞

其他漏洞

越权漏洞

水平越权

水平越权是指同等权限级别越权

纵向越权

纵向越权是指不同等级权限级别越权

越权漏洞挖掘

漏洞出现点:一般在网商,网点等

数据交互的地方

用户可操作的地方

参数可控制的地方

示例:metinfo 4.0@2008-2018

会员中心

修改资料

抓包

将用户名改为另一个用户的名字->会修改另一个用户的信息

(同样可以修改管理员的密码-纵向越权)

逻辑漏洞挖掘

逻辑漏洞分类

逻辑密码找回->在填写手机号后抓包,改包->发送

逻辑支付漏洞->(支付金额,购买数量)抓报,改包

逻辑登录->修改响应包,抓报-do intercept->response to thisrequest->forward

SSRF(Serve-Side Request Forgery:服务器端请求伪造)

SSRF是一种由攻击者构造形成有服务器端发起请求的安全漏洞,一般情况下,SSRF攻击的目标是从外网无法访问的内部系统(正是因为它由服务端发起的,所以它能够请求到与它相连接与外网隔绝的内部系统)

SSRF形成的原因大部分是由于服务器端提供了从其他服务器应用获取数据的功能,且没有对目标地址进行过滤和限制,比如从指定URL地址获取网页文本内容,加载指定地址的图片,下载等

漏洞产生

用户在地址栏输入网址->向目标网站发送请求->目标网站接收请求并在服务器端验证请求是否合法,然后返回用户所需要的页面->用户接收页面并在浏览器中显示

产生漏洞的环节:目标网站接受请求后在服务器端验证请求是否合法

产生的原因:服务器端的验证并没有对齐请求获取图片的参数(image=)做出严格的过滤以及限制,导致可以从其他服务器获取一定量的数据。

例如:

www.xx.com/a,asp?image=http://www.abc.com/1,jpg

如果将http://abc.com/1.jpg换成与该服务器相连的内网服务器地址会产生的效果:

如果存在该内网地址就会返回1xx,2xx之类的状态码,不存在就会是其他的状态码。

简析:SSRF漏洞就是通过篡改获取资源的请求,发送给服务器,但是服务器并没有发现这个请求是不合法的,然后服务器以他的身份来访问其他服务器的资源。

SSRF漏洞的寻找

1.分享,通过URL地址分享网页的内容

2.转码与服务

3.在线翻译

4.图片加载与下载:通过URL地址加载或下载图片

5.图片,文章收藏功能

6.未公开的api实现以及其他调用URL的功能

7.从URL中关键字寻找

share        wap           url              link            src             source               target

u                ig               display               sourceurl          imageurl           domain

渗透测试学习 二十一、 JSP相关漏洞的更多相关文章

  1. 渗透测试学习 二十、 其他漏洞汇总之PHP相关漏洞

    大纲: PHP相关漏洞 JSP相关漏洞 其他漏洞汇总 PHP相关漏洞 文件包含漏洞 php://input等伪协议利用 代码执行漏洞 变量覆盖漏洞 文件包含漏洞 程序开发人员一般会把重复使用的函数写到 ...

  2. 渗透测试学习 十七、 XSS跨站脚本漏洞详解

      一般用途:拿cookie进后台,将后台地址一起发送过来 特点:挖掘困难,绕过困难  大纲: XSS漏洞基础讲解 XSS漏洞发掘与绕过 XSS漏洞的综合利用 XSS漏洞基础讲解 XSS介绍: 跨站脚 ...

  3. 渗透测试学习 二十九、kali安装,信息搜集,服务器扫描

    kali安装,信息搜集,服务器扫描 kali介绍 Kali Linux是基于Debian的Linux发行版, 设计用于数字取证操作系统.由Offensive Security Ltd维护和资助.最先由 ...

  4. 渗透测试学习 二十二、getshell总结

    大纲   管理员权限拿shell 普通权限拿shell 常见cms拿shell 进后台主要是可以对网站前台的内容,样式等做操作,要改脚本的内容的权限只有在webshell的权限下才可以(某些情况除外) ...

  5. 渗透测试学习 三十一、MSF

    术语 测试者利用系统程序或服务的漏洞进行攻击的一个过程——渗透攻击(exploit),攻击载荷(payload) 攻击者在目标系统上执行的一段代码,该代码具有反弹链接,创建用户.执行其他系统命令的功能 ...

  6. 渗透测试学习 二、Windows基础

    系统目录  服务  端口  注册表  黑客常用DOS命令(在拿到shell时会用到) 一.  系统目录 Windows目录  系统的安装目录 System32àconfigàSAM文件  是用户密码的 ...

  7. 渗透测试学习 二十八、WAF绕过详解

    大纲: WAF防护原理讲解 目录扫描绕过WAF 手工注入绕过WAF sqlmap绕过WAF 编写salmap绕过WAF 过WAF一句话编写讲解 菜刀连接绕过WAF webshell上传绕过WAF 提权 ...

  8. 渗透测试学习 二十三、常见cms拿shell

    常见cms 良精.科讯.动易.aspcms.dz 米拓cms.phpcms2008.帝国cms.phpv9 phpweb.dedecms 良精 方法: 1.数据库备份拿shell 上传图片——点击数据 ...

  9. Kali Linux Web 渗透测试视频教程—第十一课-扫描、sql注入、上传绕过

    Kali Linux Web 渗透测试视频教程—第十一课-扫描.sql注入.上传绕过 文/玄魂 原文链接:http://www.xuanhun521.com/Blog/2014/10/25/kali- ...

随机推荐

  1. 持续集成与Devops关系

    什么是持续集成 持续集成(Continuous Integration,简称CI),是一种软件开发实践,在实践中指只要代码有变更,就自动运行构建和测试,反馈运行结果.通俗一点来讲,就是绑定项目的代码仓 ...

  2. SAP MM 无料号采购申请单中'评估价格'之填写

    SAP MM 无料号采购申请单中'评估价格'之填写 1),SAP系统中,采购申请里的'评估价格'来源有二, a)如果是有物料号的采购,则该价格来自于物料主数据里里的成本价(移动平均价或者标准价),自动 ...

  3. IDEA中GitLab的使用

    首先安装git https://git-scm.com/downloads/ 下载对应的版本 下载好了,安装打开 Windows. 打开之后2步走,与git连接 首先选择仓库,进行git init本地 ...

  4. Octave中的矩阵常用操作2

    sum(a):矩阵里的数据求和prod(a):乘积floor(a):向上取整ceil(a):向下取整max(A,[],1):取每一列的最大值max(A,[],2):取每一行的最大值max(max(A) ...

  5. vue模板语法上

    vue的插值案例 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> < ...

  6. Node.js使用Nodemailer发送邮件

    除了Python,在node中收发电子邮件也非常简单,因为强大的社区有各种各样的包可以供我么直接使用.Nodemailer包就可以帮助我们快速实现发送邮件的功能. Nodemailer简介 Nodem ...

  7. vscode源码分析【九】窗口里的主要元素

    第一篇: vscode源码分析[一]从源码运行vscode 第二篇:vscode源码分析[二]程序的启动逻辑,第一个窗口是如何创建的 第三篇:vscode源码分析[三]程序的启动逻辑,性能问题的追踪 ...

  8. python-13-集合增删查

    前言 集合:可变的数据类型,但元素必须是不可变的数据类型,无序不重复,既可哈希.所以python的集合是不能进行修改的,只有增删查.可哈希.不可变数据类型有:元组.bool.int.str 一.增 1 ...

  9. C++入门到理解阶段二基础篇(3)——C++数据类型

    目录 1.数据类型概述 2.基本的内置类型 整型 实型(浮点型) 字符型 转义字符 字符串型 c风格的字符串 c++风格的字符串 布尔类型bool 1.数据类型概述 使用编程语言进行编程时,需要用到各 ...

  10. 面试官:你看过Redis数据结构底层实现吗?

    面试中,redis也是很受面试官亲睐的一部分.我向在这里讲的是redis的底层数据结构,而不是你理解的五大数据结构.你有没有想过redis底层是怎样的数据结构呢,他们和我们java中的HashMap. ...