怎么在现有网站做直播内容,电子商务网站建设选择,电子商务网站建设与维护方法,网站企业备案资料目录 可能使用的sql函数
入侵网站方式
1、文件上传漏洞
2、rce
3、sql注入
SQL注入
什么是sql注入
进行SQL注入
实验环境
开始实验#xff08;使用information_shema数据库#xff09;
1、进入靶场
2、报列数
下面来解释一下为什么要照上面SQL语句写
url编码
单…目录 可能使用的sql函数
入侵网站方式
1、文件上传漏洞
2、rce
3、sql注入
SQL注入
什么是sql注入
进行SQL注入
实验环境
开始实验使用information_shema数据库
1、进入靶场
2、报列数
下面来解释一下为什么要照上面SQL语句写
url编码
单引号逃逸
注释sql语句 3、联表查询
联表查询结果显示 4、查表名
查表名 多个表名一起显示
5、查列名 6、爆数据 可能使用的sql函数
database()数据库名
user()使用者
version()版本信息
length(database()) //获取数据库长度
substr(database(),2,1)//从数据库第二个位置往后获取一个字符
入侵网站方式
1、文件上传漏洞
前提没有waf没有拦截但是现在这个东西想成功概率比较低因为一般都是白名单的方式
2、rce
rce直接执行命令创建一个文件把你的木马写进去。但是rce漏洞不是很容易
3、sql注入
尝试拿到管理员密码登陆网站后台尝试获取取webshell
SQL注入
什么是sql注入
SQL注入攻击是一种常见的网络安全威胁主要针对使用结构化查询语言(SQL)进行数据库操作的应用程序。通过利用应用程序对用户输入数据的不正确处理攻击者可以在SQL查询中注入恶意代码从而达到恶意目的。
进行SQL注入
下面以实验来进行不同sql注入
实验环境
sqli-LABS靶场第一关
开始实验使用information_shema数据库
1、进入靶场 2、报列数
按照提示输入一个id之后的步骤就是将这个id插入到sql语句中然后在数据库进行查询
如下图时sqli-LABS靶场的第一关代码这个代码就是将你输入的id插入sql语句使用select进行查询 根据这点我们来进行注入首先进行报列数报列名的原因是在后续进行联表查询时需要知道有几列
报列数使用order by来进行测试按照第1、2、3进行排序依次尝试 按照第4列进行排序报错说明现在只有3列 下面来解释一下为什么要照上面SQL语句写
url编码
首先url是有编码规范的所以在后面是%23url的编码规范就是将符号变成ascii编码然后再转成16进制然后在添加%%23就是#的意思 单引号逃逸
然后看上面的语句id的内容是被一个单引号括起来的你输入进去的SQL语句是会被当成字符串的所以我们就要想办法让输入的内容逃逸出来 逃逸的方法我们可以在后面再加一个单引号 在代码中如下显示这样前面的单引号就被闭合了 注释sql语句
那么后面的单引号又落单了我们可以将后面代码注释掉 3、联表查询
联表查询使用union
在进行联表查询的时候你发现你想爆出来的数据库名没有爆出来原因是id1那查询出来的结果自然就是id1的那一行 联表查询结果显示
想要查询出你想要的东西那就让数据库查在查id的时候查不出来。要么id特别大数据库中没有要么id等于-1
当id-1时 4、查表名
在官方的information_schema.tables 中有表名依靠下一句语句可以查询到表名
下面的意思就是在information_schema数据库中查询表table中字段table_schema等于你查到的数据名的table_name的名称
select 1,table_name from information_schema.tables where table_schema 数据库名
查表名
下图是查询例子但是只爆出了一个表名只显示出了你查询的数组的第一个 多个表名一起显示
group_concat()将你查询到的结果一整列全部爆出来查看其中表名users很像用户表名继续查 5、查列名 6、爆数据
如下图已经获取了用户账户密码这样就可以进行下一步渗透了 不嫌弃的点点关注点点赞 ଘ(੭ˊᵕˋ)੭* ੈ✩‧₊˚