payload

jwt token认证

北慕城南 提交于 2020-03-11 07:02:36
目录 1、drf-jwt手动签发与校验 2、drf小组件:过滤、筛选、排序、分页 => 针对与群查接口 jwt_token源码分析(入口) 签发token源码分析 校验token源码分析 手动签发token 签发源码小总结: 手动校验token 校验源码小总结 1、drf-jwt手动签发与校验 2、drf小组件:过滤、筛选、排序、分页 => 针对与群查接口 jwt_token源码分析(入口) rest_framework_jwt --> views.py --> ObtainJSONWebToken(JSONWebTokenAPIView) class ObtainJSONWebToken(JSONWebTokenAPIView): serializer_class = JSONWebTokenSerializer 然后到父类中JSONWebTokenAPIView的post方法 def post(self, request, *args, **kwargs): #从get_serializer获取serializer serializer = self.get_serializer(data=request.data) ........ 点击get_serializer def get_serializer(self, *args, **kwargs):

基于 Token 的身份验证:JSON Web Token

徘徊边缘 提交于 2020-03-11 02:12:36
最近了解下基于 Token 的身份验证,跟大伙分享下。很多大型网站也都在用,比如 Facebook,Twitter,Google+,Github 等等,比起传统的身份验证方法,Token 扩展性更强,也更安全点,非常适合用在 Web 应用或者移动应用上。Token 的中文有人翻译成 “令牌”,我觉得挺好,意思就是,你拿着这个令牌,才能过一些关卡。 传统身份验证的方法 HTTP 是一种没有状态的协议,也就是它并不知道是谁是访问应用。这里我们把用户看成是客户端,客户端使用用户名还有密码通过了身份验证,不过下回这个客户端再发送请求时候,还得再验证一下。 解决的方法就是,当用户请求登录的时候,如果没有问题,我们在服务端生成一条记录,这个记录里可以说明一下登录的用户是谁,然后把这条记录的 ID 号发送给客户端,客户端收到以后把这个 ID 号存储在 Cookie 里,下次这个用户再向服务端发送请求的时候,可以带着这个 Cookie ,这样服务端会验证一个这个 Cookie 里的信息,看看能不能在服务端这里找到对应的记录,如果可以,说明用户已经通过了身份验证,就把用户请求的数据返回给客户端。 上面说的就是 Session,我们需要在服务端存储为登录的用户生成的 Session ,这些 Session 可能会存储在内存,磁盘,或者数据库里。我们可能需要在服务端定期的去清理过期的 Session 。

基于Token的身份验证

妖精的绣舞 提交于 2020-03-11 02:12:06
最近了解下基于 Token 的身份验证,跟大伙分享下。很多大型网站也都在用,比如 Facebook,Twitter,Google+,Github 等等,比起传统的身份验证方法,Token 扩展性更强,也更安全点,非常适合用在 Web 应用或者移动应用上。Token 的中文有人翻译成 “令牌”,我觉得挺好,意思就是,你拿着这个令牌,才能过一些关卡。 传统身份验证的方法 HTTP 是一种没有状态的协议,也就是它并不知道是谁是访问应用。这里我们把用户看成是客户端,客户端使用用户名还有密码通过了身份验证,不过下回这个客户端再发送请求时候,还得再验证一下。 解决的方法就是,当用户请求登录的时候,如果没有问题,我们在服务端生成一条记录,这个记录里可以说明一下登录的用户是谁,然后把这条记录的 ID 号发送给客户端,客户端收到以后把这个 ID 号存储在 Cookie 里,下次这个用户再向服务端发送请求的时候,可以带着这个 Cookie ,这样服务端会验证一个这个 Cookie 里的信息,看看能不能在服务端这里找到对应的记录,如果可以,说明用户已经通过了身份验证,就把用户请求的数据返回给客户端。 上面说的就是 Session,我们需要在服务端存储为登录的用户生成的 Session ,这些 Session 可能会存储在内存,磁盘,或者数据库里。我们可能需要在服务端定期的去清理过期的 Session 。

基于 Token 的身份验证

China☆狼群 提交于 2020-03-11 02:11:46
最近了解下基于 Token 的身份验证,跟大伙分享下。很多大型网站也都在用,比如 Facebook,Twitter,Google+,Github 等等,比起传统的身份验证方法,Token 扩展性更强,也更安全点,非常适合用在 Web 应用或者移动应用上。Token 的中文有人翻译成 “令牌”,我觉得挺好,意思就是,你拿着这个令牌,才能过一些关卡。 传统身份验证的方法 HTTP 是一种没有状态的协议,也就是它并不知道是谁是访问应用。这里我们把用户看成是客户端,客户端使用用户名还有密码通过了身份验证,不过下回这个客户端再发送请求时候,还得再验证一下。 解决的方法就是,当用户请求登录的时候,如果没有问题,我们在服务端生成一条记录,这个记录里可以说明一下登录的用户是谁,然后把这条记录的 ID 号发送给客户端,客户端收到以后把这个 ID 号存储在 Cookie 里,下次这个用户再向服务端发送请求的时候,可以带着这个 Cookie ,这样服务端会验证一个这个 Cookie 里的信息,看看能不能在服务端这里找到对应的记录,如果可以,说明用户已经通过了身份验证,就把用户请求的数据返回给客户端。 上面说的就是 Session,我们需要在服务端存储为登录的用户生成的 Session ,这些 Session 可能会存储在内存,磁盘,或者数据库里。我们可能需要在服务端定期的去清理过期的 Session 。

mac下使用java测试iOS推送

浪子不回头ぞ 提交于 2020-03-10 11:39:09
首先mac下有很多现在的测试iOS推送软件,为什么要用java程序测试呢; 因为大多数后台推送服务可能是JAVA开发的,那么为了验证我们在MAC上导出的推送证书文件是否正确; 制作开发证书的iOS开发人员,应当用JAVA自测来保证导出的p12推送证书文件是正确的; 1. iOS开发人员从mac钥匙串导出p12格式的推送证书; 2. mac环境配置java 首先安装java,很简单从官方下载dmg格式的java sdk,安装即可; 测试程序需要一些java的库,即jar包;以下我测试ok用到的jar包, 可直接百度对就的名字下载,或从对应的官网下载:大致用到 jackson,javapns,log4j 这三个包   jackson-core-2.9.9.jar   javapns-jdk16-2.4.0.jar   apache-log4j-2.12.0.jar(这个可能是好几个log4j的jar) 3. 安装依赖的jar包 mac下java的包安装目录在 /Library/Java/Extensions/ 我们把上面下载的jar包 放在上面目录即可; 4. 测试的java程序代码 import java.util.ArrayList; import java.util.List; import javapns.devices.Device; import javapns

vue使用下载插件来完成下载文件

岁酱吖の 提交于 2020-03-10 00:15:14
leixign vue下载插件 1.当我使用a标签实现下载的时候,是能解决下载的问题,但是会跳转页面。 2.那么我们使用点击事件后,用window.open或者window.localtion.href,那么也会和使用a标签的效果是一样的,用户体验度,较差。 3.那么我们改成download.js,完成了预期想要的效果,但是遇见一个问题,dowload.js只能自写内容来下载,那么我们如何实现根据url来实现下载的内容那。 我们可以修改 url = !strFileName && !strMimeType && payload; 改为:url = payload;就可以实现效果了。 但是还有一个问题,就是我们直接从download.js中下载的js是()() //注:这种应该是自执行函数 所以在vue调用时会有bug,我们可以把downloadjs中复制download函数中的内容进行修改: 如下所示:(以后需要下载, 直接复制用以下内容放入一个新建js文件 即可使用) //download.js v3.0, by dandavis; 2008-2014. [CCBY2] see http://danml.com/download.html for tests/usage // v1 landed a FF+Chrome compat way of downloading

MQTT入门教程(一)

陌路散爱 提交于 2020-03-09 08:56:20
MQTT 入门介绍 一、简述 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。 MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)。其在,通过卫星链路通信传感器、偶尔拨号的医疗设备、智能家居、及一些小型化设备中已广泛使用。 二、设计规范 由于物联网的环境是非常特别的,所以MQTT遵循以下设计原则: (1)精简,不添加可有可无的功能; (2)发布/订阅(Pub/Sub)模式,方便消息在传感器之间传递; (3)允许用户动态创建主题,零运维成本; (4)把传输量降到最低以提高传输效率; (5)把低带宽、高延迟、不稳定的网络等因素考虑在内; (6)支持连续的会话控制; (7)理解客户端计算能力可能很低; (8)提供服务质量管理; (9)假设数据不可知

SQLMAP自动注入(三)—Injection,Detection,Techniques

孤街浪徒 提交于 2020-03-08 07:43:12
-p 指定扫描的参数 ,对于user-agent,referer,host进行扫描 sqlmap -u "url地址" -p "user-agent,host" --dbs --skip 排除指定参数扫描 --skip"id,user-agent" URI注入点 sqlmap -u "http://targeturl/paraml/value*/value2" 当sqlmap扫描一些url地址时候,有些参数没有像规定标准设置,我们需要指定要扫描的参数是哪些,在指定参数后加*号 即表示此数据为我们要注入扫描的参数 --dbms 扫描数据库版本,我们可以指定扫描的数据库版本 --dbms="mysql" --os Linux windows 指定操作系统 --invalid-bignum / --invalid-logical 是某个参数取值失效 invalid-bignum 取到9999999 invalid-logical id=13 and 18=19 --tamper 混淆脚本,用于绕过应用层过滤 绕过WAF等等 sqlmap开发者已经编写好了几个Py脚本,可以提供我们使用 查看脚本位置: sqlmap -u "目标url+payload" --tamper="between.py,space2comment.py" 目的就是将我们的payload进行混淆提交

ms17-010永恒之蓝复现

可紊 提交于 2020-03-07 10:56:39
永恒之蓝ms17-010 1.简介 永恒之蓝漏洞是方程式组织在其漏洞利用框架中一个针对SMB服务进行攻击的漏洞,该漏洞导致攻击者在目标系统上可以执行任意代码。 注:SMB服务的作用:该服务在Windows与UNIX系列OS之间搭起一座桥梁,让两者的资源可互通有无, 2.实验环境: 攻击机:kali 192.168.70.131 目标机:win7 192.168.70.144 3.使用masscan对window7端口进行扫描 445端口 4.使用msfconsole,进入后,查找ms17-010:可以看到1是检测模块,2是攻击模块,3是版本高的攻击模块(win8以上)。 5.使用扫描模块看主机是否存在漏洞,使用 use auxiliary/scanner/smb/smb_ms17_010 然后使用,set rhosts 192.168.70.144设置目标ip 有下面可以看出,存在这个漏洞, 6.使用攻击模块进行攻击 use exploit/windows/smb/ms17_010_eternalblue 设置payload set payload windows/x64/meterpreter/reverse_tcp 要选用其他payload可以使用show payloads查看适合要攻击的目标主机的payload show options

2020/03/05 03-查询表达式、Session-Cookie机制、JWT

空扰寡人 提交于 2020-03-07 04:32:31
模型操作也就是model类提供的操作能力,一般操作苏剧无非就是增删改查,CRUD,要学会再django中如何操作,提供了一个orm,这个orm提供了操作的东西,叫管理器对象,管理器对象是一个很特别的类,不能直接调用,这个实例是捆绑在model对象上的。 自己创建可以替换,也可以多替换几个 orm的操作就是将增删改查所有的方法操作换成sql语句,这个语句是交给orm来做的,orm更在乎对象和关系,,比如用外键描述关系。比如一对一,多对多。 对象是指面向对象的对象,用类和实例的方式描述大千世界,数据库是用关系模型来描述世界. 类对应表,类属性对应表字段。一行行记录对应一个个实例 操作和sqlalchemy很像,都是懒惰的方式,如果不使用就不查,减轻对数据库的负担,这样就让数据库的更多时间给别人使用。查询完会缓存,缓存在数据集里。 也可以使用第三方,把有意义的数据存放到里面进行缓存,redis可以设定缓存多长时间,或者到什么时候清除 切片也很懒惰,不用也不查,切片跟limit和offset语句是对应起来的,但是之间有个计算关系 过滤器,就是all,filter,一般很少用all,查询 了object.filter用的更多,后面再做切片,用filter的时候小于大于成了问题,不能用了,所以提供了新的语法lookup表达式。 使用主键的时候可以使用PK这个值。 提供了一些查询单个值的方式