当前位置:   article > 正文

安全基础~通用漏洞5

安全基础~通用漏洞5

知识补充

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');
  • 1
  • 2

使用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天参考链接

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/124281
推荐阅读
相关标签
  

闽ICP备14008679号