白帽子讲web安全笔记-对应B站视频

B站视频 https://space.bilibili.com/474397766/channel/index

白帽子讲web安全

权限: 用户admin 系统system

漏洞利用代码 exploit,exp,poc

web技术:网站 SSH linux系统 远程管理应用

banner 宣称,通告,通知,标记语

windows RPC服务 445端口 远程过程调用

shellcode 攻击代码 攻击载荷

webshell 攻击代码 攻击载荷 攻击脚本

敏捷开发 应用 ,软件 设计,策略

浏览器安全

同源策略

浏览器功能 隔离网站 js

有些标签不受到此策略限制

XMLHttpRequest javascript不允许操作HTTP头

DOM Cookie XMLHttpRequest 第三方插件

多进程 多线程

XSS

cookie劫持

构造get与post请求

通过css

获取用户IP

代理服务器 NAT 借助第三方软件获取IP

利用字符编码

utf-8

防御XSS

Httponly js读不到cookie

输入检查 输出检查 URL编码

a标签 检测整个URL 补全http 伪协议

处理富文本

文档 DOM

CSRF

用户 攻击者服务器 博客文章

临时cookie 本地cookie

有的浏览器禁止了本地cookie,攻击者只能想办法获取临时cookie

利用社工,你要使用优惠券,必须先登录淘宝不能关闭(淘宝服务器发送临时cookie给用户),然后你在点击我发给你的优惠券链接(攻击者的服务器),此时用户的临时cookie将发送到攻击者的服务器上面。最终攻击者使用用户的临时cookie(伪造成用户的身份给淘宝发请求)

P3P头副作用

session cookie(临时cookie) 打破同源策略 跨域访问cookie

子域名 二级域名 主域名

flash CSRF

CSRF Worm

CSRF的防御

验证码 Referer check anti CSRF Token

token (对抗CSRF攻击)

同时 表单 session cookie

点击劫持

flash点击劫持

图片覆盖攻击

拖拽劫持与数据窃取

防御点击劫持

看得见的 看不见的 显示风格

frame busting X-Frame-Options

HTML5安全

防御策略:httponly 同源策略 X-Frame-Options等 xss filter

新标签的XSS

iframe的sandbox

Canvas的妙用

破解验证码

其他安全问题

Cross-Origin Resource Sharing

origin 请求头 防御CSRF

postMessage——跨窗口传递消息

web存储:会话存储和本地存储

服务器端应用安全

注入攻击

sql注入

依赖于攻击者对数据库语言的熟悉

盲注

Timing Attack

数据库攻击技巧

文件操作

命令执行

UDF 用户自定义函数

攻击存储过程

编码问题

十进制 , 二进制 , 十六进制

SQL Column Truncation

正确的防御SQL注入

使用预编译语句

使用存储过程

检查数据类型

使用安全函数

XML注入

代码注入

CRLF注入

文件上传漏洞

%00截断绕过上传检查 伪造文件头

基于web服务本身附带的功能来进行绕过

  • apache 文件解析(从后往前)

深入apache官网去花时间遍历各种细节上面的声明都有什么功能

  • IIS文件解析问题 00截断被替换成分号

iis 6 ——处理文件夹扩展名出错,从此目录开始下的所有文件不管什么后缀名,全当成ASP文件进行执行

iis 配置问题:目录有写权限,WebDav功能被打开,则默认支持PUT方法上传文件,结合MOVE方法重命名改成脚本文件

  • PHP CGI路径解析问题(Nginx配置fastcgi使用PHP时)

结论:官网上面的所有细节声明都有助于攻击者加以利用,开发者关注的是功能的使用,其他的细节部分可能不去关注或者理解错误。

进阶性的安全成长意识是:阅读更多的信息,知道更多的细节,给实战创造更多的意识性行为与实验的想法。

利用上传文件钓鱼用户

在用户不多但被人盯上的时候,攻击者的目标是服务器;在用户较多的网站中,不仅目标是服务器,用户也会成为攻击者的目标。用户使用“百度”是信任它的名气,没想到网站里面有“毒”。

  • 比如网址后面带一个图片文件,图片格式的头部分是为了迷惑文件上传合法性的检查,图片里面真正的内容是代码。有的浏览器会“自作聪明”将图片里面代码部分给执行了。

设计安全的文件上传功能

1.文件上传的目录为不可执行

2.判断文件类型

3.使用随机数改写文件名和文件路径

4.单独设置文件服务器的域名

认证与会话管理

认证:认出用户 授权:决定用户能做什么

凭证:比如账号密码 单 双 多

授权:登陆以后可以干什么事情

session与认证

session Fixation攻击

session保持攻击

单点登陆(SSO)

访问控制

主体 客体 操作

垂直权限管理

thinkphp

全局变量覆盖

原文地址:https://www.cnblogs.com/sec875/p/13158641.html