安全基础~通用漏洞5

文章目录

  • 知识补充
  • CSRF
  • SSRF
  • xss与csrf结合创建管理员账号

知识补充

NAT:网络地址转换,可以将IP数据报文头中的IP地址转换为另一个IP地址,并通过转换端口号达到地址重用的目的。即通过将一个外部IP地址和端口映射更大的内部IP地址集来转换IP地址。

端口映射:在数据传输结束后,会将端口释放掉,若进行了端口映射,那么公网数据包只要是该映射端口,就会固定发送到对应的私有ip

功能:NAT不仅能解决了lP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。把内网的私有地址,转化成外网的公有地址。使得内部网络上的(被设置为私有IP地址的)主机可以访问Internet。

TTL = 600秒,意味着 DNS 服务器缓存解析记录 600 秒(十分钟),在这十分钟内更改 DNS 解析的记录值是不会生效的,需要等十分钟后,DNS 服务器缓存更新才可以生效

设置的时间长短对网站有什么影响?

1、TTL值大 = 减少DNS递归查询过程,提升域名解析速度。稳定的网站,其 DNS 的解析记录发生变更的频率比较低。如果 TTL 值比较大, DNS 的解析结果在全国各地 localdns 中的缓存时间很长,这样当用户访问网站时,就无需经过复杂的 DNS 的递归解析过程。通过最近的本地 DNS 返回域名的解析结果,解析速度变快。
2、TTL值小 = 更新速度快。网站在新创阶段,因为需要频繁测试,其 DNS 的解析记录发生变更的频率比较高。如果 TTL 值比较小,解析速度很快就会生效。

PHP2(url二次编码)

CSRF

CSRF的攻击过程两个条件

1、目标用户已经登录了网站,能够执行网站的功能。
2、目标用户访问了攻击者构造的URL。

CSRF安全问题黑盒怎么判断

1、看验证来源不-修复
2、看凭据有无token–修复
3、看关键操作有无验证-修复

CSRF安全问题白盒怎么审计
同黑盒思路一样,代码中分析上述三看

b占 CSRF 05:Token和非Session参数部分的Cookie做了绑定:其中包含bp构造html,绑定的绕过

SSRF

SSRF 是一种攻击者发起的伪造 由服务器端发起请求的一种攻击

SSRF 危害
@ 端口扫描
@ 内网Web应用指纹识别
@ 攻击内网Web 应用
@ 读取本地文件

SSRF常见代码

test

参考链接
SSRF利用

first
second
third

SSRF信息搜集

SSRF伪协议

file 伪协议

file伪协议

探查服务器所在ip段所有主机,利用burp进行爆破

first
second
再次使用 file:///proc/net/arp进行扫描,显示内网存在主机

dict 伪协议

相对于其它伪协议对tcp端口进行扫描的话,dict会更快一些

first
second
http 伪协议

http 伪协议 是用来探测内网目录的

假如我们已经扫描到内网主机172.250.250.4我们随机加入一个页面
eg:172.250.250.4/index.php

first
常用字典,kali中自带的有:/usr/share/wordlists/drib

second
gopher 伪协议

Gopher是Internet上一个非常有名的信息查找系统,它将Internet上的文件组织成某种索引,很方便地将用户从Internet的一处带到另一处。

参考文章

first
second

在使用get时,可以进行提交,使用post时就不能够传参

third
使用post时,只能将数据内容提交到ssrf服务器上进行解析,但其不能post到另一台服务器
forth

在使用GET传参时,可以进行构造,如下,直接点击submit提交即可。
fifth
还有另一种方式,就是将构造出来的内容进行两次编码。
1st
2nd
3rd

POST提交,和上面一样,将构造内容进行两次url编码,直接send即可。

1st
SSRF之gopher协议深度解析
content-length一定要与实际长度一致

127.0.0.1 回环绕过

1st
302 重定向绕过ip限制

主要针对私网地址被限制的情况,使用302重定向进行访问。
1st

在公网服务器上创造页面,狗仔重定向代码
eg:php

<?php
header('Location: http://127.0.0.1/flag.php');

使用php -s可以进行监听该端口

DNS重绑定绕过

1,上传之后若是域名,则需要进行DNS解析;
4,在服务端请求时同样需要域名解析

1st

2nd

生成域名解析,将两个ip对应同一域名主机。
3rd
访问域名网站,获取flag
4th

小迪演示

-案例说明:小迪在登录后台管理自己网站的时候,突然群里给小迪说阿祖又说爱上别人了,随后给我发了个URL链接,小迪直接点了进去,GG!
小迪网站:http://127.0.0.1:8105/
发送URL:http://127.0.0.1:8081/web/add.html
访问这个地址,其实就是管理员添加账号密码的数据包

前提条件:
1.管理员要提前登录(没有登录就没有权限触发)
2.访问了这个地址
3.要知道怎么添加用户,知道添加用户的数据包

利用流程:
1、获取目标的触发数据包
2、利用CSRFTester构造导出
3、诱使受害者访问特定地址触发

那么应该怎么构造数据包呢,这里我们在本地搭建,然后用到工具CSRFtest

运行bat程序,然后把浏览器端口修改为8008
first
在触发添加数据包的时候,同时在工具中start
会抓取你操作的数据包
second
在下面选择forms表单,然后把他生成为html格式,放在网站目录:
访问数据包地址:http://127.0.0.1:8081/web/add.html

然后在登录状态去访问http://127.0.0.1:8081/web/add.html
用户被创建成功。但是自己抓的包不能成功。

third
那么应该怎么防御这种漏洞呢?

CSRF安全问题黑盒怎么判断:
1、看验证来源不(同源策略)-修复
2、看凭据有无token–修复
3、看关键操作有无验证-修复
-CSRF安全问题白盒怎么审计:
同黑盒思路一样,代码中分析上述三看
验证来源:
打开百度,修改图片地址,让他指向xiaodi8.com

forth
当点击图片的时候,抓取数据包,关键字段Referer: https://www.baidu.com/
可以说明这个数据包的来源是从baidu.com中来的。

fifth
在自己的博客上添加用户,抓取数据包,可以看到Referer: http://47.100.167.248/zb_system/admin/member_edit.php?act=MemberNew
这个的来源是自己点进来的,不是从baidu.com中来的。
sixth
相当于管理员触发http://127.0.0.1:8081/web/add.html,最后访问了http://127.0.0.1:8105/地址,那么对于http://127.0.0.1:8105/的网站来源是http://127.0.0.1:8081/web/add.html

如果做了同源策源,不是自己网站触发的数据包,就认定为非法来源。这样子就可以起到防御效果。但是这个在数据包中能够修改。

怎么判断有没有同源策略,
点过来的,有同源,能访问

复制点过来的地址,直接访问(如果能访问,没有同源策略,如果不能访问,有同源策略)
看凭据有无token

查看cookie值:看cookie值里面有没有带token,token_21d330cd=c36ce18a6e6d189b137244e7429e954e2a34b53000bce07d6fe72af52488f9fe1646377072;
seventh
无token的数据包

eighth

xss与csrf结合创建管理员账号

  1. 管理员账号可以添加用户管理
    1st
  2. 添加用户为ajest,密码为123456
    2nd
  3. 登录ajest,验证登录情况
    4th
  4. 登录成功,可以进入后台
    5th
  5. 删除之后再次验证,无法登录
    6th
  6. 利用xss,在评论处插入代码构造CSRF
    7th
    8th
  7. 管理员查看到留言后,出发js,此时CSRF构造成功
    9th
    10th

有效防御

1st
1nd
3rd

小迪第39天参考链接
小迪第40天参考链接

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/685450.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ICLR 2023#Learning to Compose Soft Prompts for Compositional Zero-Shot Learning

组合零样本学习&#xff08;CZSL&#xff09;中Soft Prompt相关工作汇总&#xff08;一&#xff09; 文章目录 组合零样本学习&#xff08;CZSL&#xff09;中Soft Prompt相关工作汇总&#xff08;一&#xff09;ICLR 2023#Learning to Compose Soft Prompts for Compositional…

透光卓越,光耦继电器的独特特点全面解析

光耦继电器作为电子控制系统中的核心元件&#xff0c;其光电隔离技术为其独特之处。通过光电隔离技术&#xff0c;光耦继电器实现了输入和输出之间的电气隔离&#xff0c;有效阻止了高电压与低电压之间的直接接触。这项技术不仅提高了系统的安全性&#xff0c;还有效减少了电气…

Vue练习1:组件开发1(头像组件)

样式预览 注释代码 <template><div class"img-box":style"{ //动态style必须为对象width: size rem,height: size rem}"><imgclass"avatar-img":src"url" //动态url/></div> </templ…

【DDD】学习笔记-聚合设计原则

聚合设计原则 对比对象图和聚合&#xff0c;我们认为引入聚合的目的是控制对象之间的关系&#xff0c;这实则是引入聚合的技术原因。领域驱动设计引入聚合&#xff08;Aggregate&#xff09;来划分对象之间的边界&#xff0c;在边界内保证所有对象的一致性&#xff0c;并在对象…

C语言从零实现贪吃蛇小游戏

制作不易&#xff0c;点赞关注一下呗&#xff01;&#xff01;&#xff01; 文章目录 前言一. 技术要点二、WIN32API介绍三、贪吃蛇游戏设计与分析 1.游戏开始前的初始化 2.游戏运行的逻辑 总结 前言 当我们掌握链表这样的数据结构之后&#xff0c;我们就可以用它来…

比特币 P2PKH、P2SH

标准脚本P2PKH、P2SH 区块链重要基础知识7-1——标准脚本P2PKH、P2SH-CSDN博客 比特币中P2SH(pay-to-script-hash)多重签名的锁定脚本和解锁脚本 https://www.cnblogs.com/itlgl/p/10419325.html

京东护网面试题汇总

1 、JNI 函数在 java 中函数名为 com.didi.security.main,C 中的函数名是什么样的&#xff1f; com_didi_security_mian java.com.didi.security.main 2 、Frida 和 Xposed 框架&#xff1f; 3 、SSRF 利用方式&#xff1f; 4 、宏病毒&#xff1f; 5 、APP 加壳&a…

黑群晖一键修复:root、AME、DTS、转码、CPU型号等

食用方法&#xff1a;SSH连接群晖使用临时root权限执行 AME3.x激活补丁 只适用于x86_64的&#xff1a;DSM7.x Advanced Media Extensions (AME)版本3.0.1-2004、3.1.0-3005 激活过程需要下载官方的解码包&#xff0c;过程较慢&#xff0c;耐心等待。。。 DSM7.1和7.2的AME版…

Rust - 变量与数据的交互方式(move)

变量与数据的交互方式 - 移动 Rust 中的多个变量可以采用一种比较独特的方式和同一个数据进行交互&#xff0c;如下代码所示&#xff0c;将变量x的值赋给y&#xff1a; fn main() {let x 1;let y x; }我们大概可以推论出上述代码的原理&#xff1a;将1这个整数绑定给x变量&…

建造者模式-Builder Pattern

原文地址:https://jaune162.blog/design-pattern/builder-pattern/ 引言 现在一般大型的业务系统中的消息通知的形式都会有多种,比如短信、站内信、钉钉通知、邮箱等形式。虽然信息内容相同,但是展现形式缺不同。如短信使用的是纯文本的形式,钉钉使用的一般是Markdown的形…

JavaScript设计模式与开发实战

JavaScript设计模式与开发实践 第一章、面向对象的JavaScript 1.1 多态 类似java面向对象&#xff0c;通过继承共有特征&#xff0c;来实现不同方法。JavaScript的多态就是把“做什么”和“谁去做”分离&#xff0c;消除类型间的耦合关系。 他的作用就是把过程化的条件分支…

智能传感器阅读笔记-物联网用智能传感器技术的发展重点

物联网用智能传感器技术的发展重点包含边缘计算算法优化、身份认证算法优化和能量采集技术。 图1 物联网用智能传感器技术的发展重点 边缘计算算法优化 边缘计算是指在靠近物或数据源头的一侧&#xff08;传感器侧&#xff09;&#xff0c;采用集检测、计算、存储、通信功能…

电容充电速度

对电容充电的过程中&#xff0c;电容器充电的电压为&#xff0c;求电容器的充电速度。

人工智能学习与实训笔记(三):神经网络之目标检测问题

目录 五、目标检测问题 5.1 目标检测基础概念 5.1.1 边界框&#xff08;bounding box&#xff09; 5.1.2 锚框&#xff08;Anchor box&#xff09; 5.1.3 交并比 5.2 单阶段目标检测模型YOLOv3 5.2.1 YOLOv3模型设计思想 5.2.2 YOLOv3模型训练过程 5.2.3 如何建立输出…

【Windows】删除 VHD 虚拟磁盘时提示“文件已在 System 中打开”的解决方法

一、原因 正如显示的那样&#xff0c;虚拟磁盘仍在被系统占用。因此我们需要断开磁盘与系统的连接。 二、解决方法 1. 在“开始”菜单中搜索“磁盘管理”&#xff0c;选择“创建并格式化硬盘分区”。 2. 右键点击需要删除的虚拟磁盘&#xff0c;选择“分离 VHD”。 3. 点击“…

只出现一次的数字

简单 相关标签 相关企业 给你一个 非空 整数数组 nums &#xff0c;除了某个元素只出现一次以外&#xff0c;其余每个元素均出现两次。找出那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法来解决此问题&#xff0c;且该算法只使用常量额外空间。 要设计一个…

机器人专题:我国机器人产业园区发展现状、问题、经验及建议

今天分享的是机器人系列深度研究报告&#xff1a;《机器人专题&#xff1a;我国机器人产业园区发展现状、问题、经验及建议》。 &#xff08;报告出品方&#xff1a;赛迪研究院&#xff09; 报告共计&#xff1a;26页 机器人作为推动工业化发展和数字中国建设的重要工具&…

【springboot+vue项目(十四)】基于Oauth2的SSO单点登录(一)整体流程介绍

场景&#xff1a;现在有一个前后端分离的系统&#xff0c;前端框架使用vue-element-template&#xff0c;后端框架使用springbootspringSecurityJWTRedis&#xff08;登录部分&#xff09;现在需要接入到已经存在的第三方基于oauth2.0的非标准接口统一认证系统。 温馨提示&…

RabbitMQ如何保证可靠

0. RabbitMQ不可靠原因 消息从生产者到消费者的每一步都可能导致消息丢失&#xff1a; 发送消息时丢失&#xff1a; 生产者发送消息时连接MQ失败生产者发送消息到达MQ后未找到Exchange生产者发送消息到达MQ的Exchange后&#xff0c;未找到合适的Queue消息到达MQ后&#xff0c;…

使用TinyXML-2解析XML文件

一、XML介绍 当我们想要在不同的程序、系统或平台之间共享信息时&#xff0c;就需要一种统一的方式来组织和表示数据。XML&#xff08;EXtensible Markup Language&#xff0c;即可扩展标记语言&#xff09;是一种用于描述数据的标记语言&#xff0c;它让数据以一种结构化的方…