Web安全之XSS、CSRF和JWT

访客5年前黑客资讯1318

XSS

跨站脚本(Cross-site scripting,一般简称为XSS)是一种网站运用程序的安全漏洞进犯,是代码注入的一种。它答应歹意用户将代码注入到网页上,其他用户在观看网页时就会受到影响。这类进犯一般包含了HTML以及用户端脚本语言。

防护办法

过滤特别字符 运用 HTTP 头指定类型

进一步了解XSS

CSRF

跨站恳求假造(英语:Cross-site request forgery),也被称为 one-click attack 或许 session riding,一般缩写为 CSRF 或许 XSRF, 是一种挟制用户在当时已登录的Web运用程序上履行非本意的操作的进犯办法。

跟跨网站脚本(XSS)比较,XSS 运用的是用户对指定网站的信赖,CSRF 运用的是网站对用户网页浏览器的信赖。

防护办法

查看referer字段 增加校验token

进一步了解CSRF

JWT

*** ON Web Token(JWT)是一个十分轻盈的标准。这个标准答应咱们运用JWT在用户和服务器之间传递安全可靠的信息。

JWT的组成

一个JWT实际上便是一个字符串,它由三部分组成,头部、载荷与签名。

头部(Header)

头部用于描述关于该JWT的最基本的信息,例如其类型以及签名所用的算法等。这也能够被表明成一个 *** ON目标。

{
"typ": "JWT",
"alg": "HS256"
}

在头部指明晰签名算法是HS256算法。 对头部进行[base64编码]得到下面字符串:

eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9

载荷(Payload)

{ "iss": "Online JWT Builder",
  "iat": 1416797419,
  "exp": 1448333419,
  "aud": "www.example.com",
  "sub": "jrocket@example.com",
  "GivenName": "Johnny",
  "Surname": "Rocket",
  "Email": "jrocket@example.com",
  "Role": [ "Manager", "Project Administrator" ]
}
iss: 该JWT的签发者,是否运用是可选的; sub: 该JWT所面向的用户,是否运用是可选的; aud: 接纳该JWT的一方,是否运用是可选的; exp(expires): 什么时分过期,这里是一个Unix时刻戳,是否运用是可选的; iat(issued at): 在什么时分签发的(UNIX时刻),是否运用是可选的;

其他还有:

nbf (Not Before):假如当时时刻在nbf里的时刻之前,则Token不被承受;一般都会留一些地步,比方几分钟;,是否运用是可选的;

将上面的 *** ON目标进行[base64编码]能够得到下面的字符串。这个字符串咱们将它称作JWT的Payload(载荷)。

eyJpc3MiOiJKb2huIFd1IEpXVCIsImlhdCI6MTQ0MTU5MzUwMiwiZXhwIjoxNDQxNTk0NzIyLCJhdWQiOiJ3d3cuZXhhbXBsZS5jb20iLCJzdWIiOiJqcm9ja2V0QGV4YW1wbGUuY29tIiwiZnJvbV91c2VyIjoiQiIsInRhcmdldF91c2VyIjoiQSJ9

签名(Signature)

将上面的两个编码后的字符串都用句号.衔接在一起(头部在前),就形成了:

eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmcm9tX3VzZXIiOiJCIiwidGFyZ2V0X3VzZXIiOiJBIn0

最终,咱们将上面拼接完的字符串用HS256算法进行加密。在加密的时分,咱们还需要供给一个密钥(secret)。假如咱们用mystar作为密钥的话,那么就能够得到咱们加密后的内容:

rSWamyAYwuHCo7IFAgd1oRpSP7nzL7BF5t7ItqpKViM

最终将这一部分签名也拼接在被签名的字符串后边,咱们就得到了完好的JWT:

eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmcm9tX3VzZXIiOiJCIiwidGFyZ2V0X3VzZXIiOiJBIn0.rSWamyAYwuHCo7IFAgd1oRpSP7nzL7BF5t7ItqpKViM

认证进程

登录

恳求认证

了解更多

参阅文章:

Web 安全概念 跨站脚本- *** 跨站恳求假造- *** *** ONP 安全攻防技能 几种常用的认证机制

相关文章

PDO 避免SQL注入的原理

 当说到防止SQL注入的办法时,脑海中总是会想到运用PDO绑定参数的办法或许运用mysql_real_eascape_string()来处理(尽管陈旧的 mysql_XXX 这类的函数现已不主张运用)...

阿里如此盾Web使用防火墙深度测评

在本年的WitAwards 2019互联网安全年度评选中,阿里如此盾Web运用防火墙(WAF)以其技能和服务赢得了群众和评委的认可,斩获「年度云安全产品及服务」奖项。实际上,WAF已经成为企业看护we...

秒爆十万字典:奇葩技巧快速枚举“一句话后门”暗码

关于一句话咱们都不生疏,有时会需求爆炸。爆炸的速度和方针的响应速度就有很大的关系了。那假如咱们爆炸的速度能够提高至少1000倍呢? 首要如下图↓ 变量=echo “ok”; 假如这个变量等于暗码的时分...

ASIS CTF - 三个魔法Web关WriteUp

榜首眼看这个应战,通常是过滤一些字符或许添加一些约束来阻挠指令履行,我经过输入&id到addr域,成功回来履行成果,能够确认这是一道指令履行的应战题。 下一步咱们来找出过滤和约束。经过测验,咱...

反击爬虫,前端工程师的脑洞能够有多大?

关于一张网页,咱们往往期望它是结构杰出,内容明晰的,这样搜索引擎才干精确地认知它。 而反过来,又有一些情形,咱们不期望内容能被容易获取,比方说电商网站的交易额,教育网站的标题等。由于这些内容,往往是...

黑客接单网:现在杀毒软件的现状为什么开始走下坡路_杀毒软件的前世今生

黑客接单网:现在杀毒软件的现状为什么开始走下坡路_杀毒软件的前世今生

今天黑客接单网来和大家谈一谈我国杀毒软件的现状,现在大家打开杀毒软件大多数都会出现很多弹窗广告被大家说成流氓软件,为什么会出现这样的情况呢,我国网络安全也在走下坡路,我来和大家说说: 第...