payload

pikachu漏洞练习之sql注入

假装没事ソ 提交于 2020-01-23 22:27:41
这里因为实验的时候只记录了一部分所以就展示一部分 1.1.1数字型注入 (1)看到界面发现是查询id功能,没有在url里看到有传参所以应该是post方法提交数据。 (2)进行sql注入之前我们最好是先想像一下这个功能提交的参数到了后台之后后台是怎样的操作的,对于当前的页面我猜测后台是这样操作 现接受我的id请求然后带入到查询语句 $id=$_POST['id'] select 字段1,字段2 from 表名 where id = $id 可以用下面的语句添加在等号后面来测试是否真确(post请求通过抓包的方式来进行测试) 1 or 1=1; 可以看到返回的是200 然后查看返回的结果可以看到把所有的结果都查询出来了。所以有漏洞并且是数字型的 1.1.2 字符型注入 查看页面发现是get请求 (1)首先也是猜想后台进行的操作,因为是查询名字,先将我们查询的数值赋给一个变量 $uname=$_GET['username'] select 字段1,字段2 from 表名 where username='$uname ' or 1=1#'; or = 1=1#验证漏洞是否存在,#号注释闭合‘’ 测试结果 1.1.3 搜索型以及xx型注入 (1)搜索型 看到界面是用户名查找我首先还是进行猜测后台的操作,猜测后台可能使用的是mysql的搜索功能,mysql查询语句 Select * from

SpringBoot整合JWT Token

喜欢而已 提交于 2020-01-22 16:06:59
在文章之前,我们先介绍几个概念 OAuth2、JWT,Spring Security、Spring Security OAuth2 OAuth2 :Open Authorization,是一种授权协议, 是规范,不是技术实现。 JWT :JSON Web Token,是一种具体的Token实现框架。 Spring Security :前身是 Acegi Security ,能够为 Spring企业应用系统提供声明式的安全访问控制。该框架老古董了。 Spring Security OAuth2 :Spring 对 OAuth2 开源实现(与Spring Cloud技术栈无缝集成)。 目前用的最多是JWT,因此本文也是围绕JWT来实现。 1.什么是JWT JWT的原则是在服务器身份验证之后,将生成一个JSON对象并将其发送回用户。当用户与服务器通信时,客户在请求中发回JSON对象。服务器仅依赖于这个JSON对象来标识用户。 2.JWT的组成 JWT TOKEN分为三部分:header . payload . signature,因此JWT通常如下表示xxx.yyyyy.zz 2.1header 头部包含了两部分,token 类型和采用的加密算法。 alg 字段指定了生成signature的算法,默认值为HS256, typ 默认值为JWT。 如果你使用Node.js,可以用Node

Spring Boot 集成 JWT

空扰寡人 提交于 2020-01-21 16:27:07
JWT (JSON Web Token)介绍, 官网 , github 定义: JSON Web令牌(JWT)是一个开放标准(RFC 7519),它定义了一种紧凑的、自包含的方式,用于在各方之间作为JSON对象安全地传输信息。该信息可以被验证和信任,因为它是数字签名的。JWTS可以使用秘密(使用HMAC算法)或公钥/私钥对使用RSA或ECDSA来签名。 JWT的主要应用场景 身份认证在这种场景下,一旦用户完成了登陆,在接下来的每个请求中包含JWT,可以用来验证用户身份以及对路由,服务和资源的访问权限进行验证。由于它的开销非常小,可以轻松的在不同域名的系统中传递,所有目前在单点登录(SSO)中比较广泛的使用了该技术。 信息交换在通信的双方之间使用JWT对数据进行编码是一种非常安全的方式,由于它的信息是经过签名的,可以确保发送者发送的信息是没有经过伪造的。 JWT由Header,Payload及Signature 3个子字符串组成 格式为:Header.Payload.Signature 例如:eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJKb2UifQ.ipevRNuRP6HflG8cFKnmUPtyp...oLL62SY Header : {"alg": "HS256"} Payload : {"sub": "Joe"} Signature :

web安全原理-文件包含漏洞

北城余情 提交于 2020-01-20 02:30:09
前言 起来吃完早饭就开始刷攻防世界的题,一个简单的文件包含题我竟然都做不出来我服了 拿出买的书开始从头学习总结文件包含漏洞! 一、文件包含漏洞 文件包含漏洞 文件包含函数的参数没有经过过滤或者严格的定义,并且参数可以被用户控制,这样就可能包含非预期文件。如果文件中存在恶意代码,无论文件是什么类型,文件内的恶意代码都会被解析并执行。 文件包含漏洞肯能会造成服务器网页被篡改、网站被挂马、服务器被远程控制、被安装后门等危害。 常见的文件包含函数: 1.include() 包含并运行制定文件。在出错时产生警告(E_WARNING),基本会继续运行。 2.include_once() 在脚本执行期间包含并运行制定文件。与include区别:检查是否被包含过,如果是则不会再次包含。 3.require()包含并运行指定文件。require在出错时产生E_COMPLE_ERROR几倍错误,脚本中止运行 4.require_once() 基本完全与require相同 与require区别:检查是否被包含过,如果是则不会再次包含。 漏洞示例代码: <?php $filename = $_GET['filename']; include($filename); ?> 以上代码,对$_GET[‘filename’]参数没有经过严格的过滤,直接带入了include()函数,攻击者可以修改$_GET[

React redux-actions

倾然丶 夕夏残阳落幕 提交于 2020-01-19 02:02:53
// npm install --save redux-actions 1:作用: 当我们的在开发大型应用的时候,对于大量的action,我们的reducer需要些大量的swich来对action.type进行判断。 redux-actions可以简化这一烦琐的过程,它可以是actionCreator,也可以用来生成reducer, 其作用都是用来简化action、reducer。 主要函数有createAction、createActions、handleAction、handleActions、combineActions。 createAction 原来创建: export const getCeshi = options = > { return { type: [ MINE ] , payload: request ( services.data ) , } } 现在: import { createActions } from 'redux-actions' import { MINE, MINE2 } from '@/constants' export const getMine = createActions ( { [ MINE ] : options = > options, [ MINE2 ] : options = > options, // [ MINE

Need an example about RecyclerView.Adapter.notifyItemChanged(int position, Object payload)

北慕城南 提交于 2020-01-18 21:05:09
问题 According to RecyclerView documentation about medthod notifyItemChanged(int position, Object payload) Notify any registered observers that the item at position has changed with an optional payload object. I don't understand how to use second paramenter payload in this method. I have searched many document about "payload" but everything was ambiguous. So, If you know about this method, please show me a clear example about it. Thank you very much. 回答1: Check out this sample code that

get_started_3dsctf_2016

♀尐吖头ヾ 提交于 2020-01-18 20:40:04
题外:这道题不是很难,但是却难住了我很久。主要是在IDA中查看反编译出的伪代码时双击了一下gets()函数,结果进入gets函数内部,我当时就懵了,误以为这是一个自定义函数,但是自定义函数应该应该不能与已有的库函数同名啊。虽然有此疑问,我没有深究,而是老老实实分析反汇编出来的伪代码,结果发现函数层层嵌套,根本分析不完。最后我不得以去网上看了别人的题解,发现根本不用管这些。题最后做出来了,但还是不明白为啥会有这么一大串代码。 ---------------------------------------------------------------------------------------------------- 解法一: 先分析题目的二进制文件 可以看出这是32位程序,没有看cannary和PIE保护,接下来把程序放入IDA中看看。 程序很简单,存在明显的栈溢出。细心的小伙伴还可以发现程序直接给了一个拿flag的函数,如下: 但是这个函数中有if条件限制,不好直接跳转到这个函数。这个时候就可以选择直接跳转到if语句块里,从而绕过if的检查。这么的做的弊端是导致栈不平衡,执行完这个函数后程序会崩溃,不过这之前我们已经拿到flag了,所以这题是没有什么关系的。最后exp如下: from pwn import * context.terminal = ['tmux',

Minimal spring ws (2.4.0) endpoint with xml payload

与世无争的帅哥 提交于 2020-01-17 03:19:15
问题 I have a specific need for a SOAP endpoint. We use spring ws 2.4.0 framework at my organization. What we really need is an endpoint that gets the SOAP message itself and returns a String. The message payload is XML data. All we need to do can be accomplished using the MessageContext object. We have no need for unmarshalled XML or such. I've been doing some experiments but always end up with the following error: No adapter for endpoint [public java.lang.String org.company.endpoint.MyEndpoint

Flask + PyJWT 实现基于Json Web Token的用户认证授权

让人想犯罪 __ 提交于 2020-01-17 01:46:00
这是我在做用户认证开发过程中看到一位大神写的文章,不过源地址已经失效了,希望有可能未来还能看到 传送门 。在此转载是不忍心这么好的文章绝版 我在 github 上找到了作者的源码,有需要的可以去下载 https://github.com/yaoyonstudio/flask-pyjwt-auth 在程序开发中,用户认证授权是一个绕不过的重难点。以前的开发模式下,cookie和session认证是主流,随着前后端分离的趋势,基于Token的认证方式成为主流,而JWT是基于Token认证方式的一种机制,是实现单点登录认证的一种有效方法。 PyJWT是一个用来编码和解码JWT(JSON Web Tokens)的Python库,也可以用在Flask上。本文就通过一个实例来演示Flask项目整合PyJWT来实现基于Token的用户认证授权。 一、需求 1、程序将实现一个用户注册、登录和获取用户信息的功能 2、用户注册时输入用户名(username)、邮箱(email)和密码(password),用户名和邮箱是唯一的,如果数据库中已有则会注册失败;用户注册成功后返回用户的信息。 3、用户使用用户名(username)和密码(password)登录,登录成功时返回token,每次登录都会更新一次token。 4、用户要获取用户信息,需要在请求Header中传入验证参数和token

ThinkCMF&tp3.2漏洞

杀马特。学长 韩版系。学妹 提交于 2020-01-16 16:14:31
hinkCMF是一款基于PHP+MYSQL开发的中文内容管理框架,底层采用ThinkPHP3.2.3构建。 ThinkCMF提出灵活的应用机制,框架自身提供基础的管理功能,而开发者可以根据自身的需求以应用的形式进行扩展。 每个应用都能独立的完成自己的任务,也可通过系统调用其他应用进行协同工作。在这种运行机制下,开发商场应用的用户无需关心开发SNS应用时如何工作的,但他们之间又可通过系统本身进行协调,大大的降低了开发成本和沟通成本。 2 | 0 0x01 漏洞概述 攻击者可利用此漏洞构造恶意的url,向服务器写入任意内容的文件,达到远程代码执行的目的。 3 | 0 0x02 影响版本 ThinkCMF X1.6.0 ThinkCMF X2.1.0 ThinkCMF X2.2.0 ThinkCMF X2.2.1 ThinkCMF X2.2.2 ThinkCMF X2.2.3 4 | 0 0x03 环境搭建 本次使用的环境版本是2.2.3,直接放到phpstudy的目录下,访问路径/ThinkCMFX/发现ThinkCMF很人性化的加载了安装向导,因此按照它的步骤一步一步来即可(2.2.3版本安装包获取方式:文末公众号内回复“ThinkCMF环境”) 填写好数据库密码以及管理员信息(phpstudy的数据库默认密码为root) 继续下一步,环境搭建成功如图所示 5 | 0 0x04