学习信安的渗透知识之--SQL注入渗透与攻防(一)

本文深入探讨了SQL注入的概念,解释了如何利用不安全的用户输入执行非法数据库操作。通过实例展示了在MySQL中进行数据库选择、表查询及数据筛选的方法。同时,提到了MySQL的重要系统库如Information_schema、Performance_schema和mysql,用于获取数据库信息和性能数据。此外,还介绍了SQL注入中的orderby特性以及如何通过查询系统库猜解表的列数。
摘要由CSDN通过智能技术生成

SQL注入基础

1.SQL注入概念

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

1.2web应用程序三层架构:视图层+业务逻辑层+数据访问层

2.SQL注入之MySQL语句语法

2.1查询当前数据库服务器所有的数据库--show databases;

2.2选中某个数据库--use 数据库名字(test);

2.3查询当前数据库所有的表--show tables;

2.4查询t1表所有数据

2.4.1查询所有--select *  from t1;

2.4.2条件查询--select * from  t1  where 条件;

2.4.3查询id=2   pass=111(union合并查询)

select *  from  t1  where  id=2   union  select * from t1  where  pass=111;

特性:1.前面查询的语句和后面查询的语句结果是互不干扰的;

2.前面的查询语句的字段数量和后面的查询语句的字段数量要一致

2.4.4order by (排序)---order by  字段名字 (也可以是数字)

作用:猜解表的列数,知道表有几列

3.SQL注入之MySQL系统库

3.1Information_schema库---信息数据库

常用的三张表

3.1.1SCHEMATA表--所有数据库信息

schemata_name----保存当前数据库服务器里面所有库名的信息

3.1.2TABLES表---所有表信息

table_name

3.1.3COLUMNS表---所有字段、列信息

column_name

3.2Performance_schema库---主要用于收集数据库服务器性能参数

3.3mysql库---核心数据库,主要负责存储数据库的用户账号信息、权限设置、关键字等mysql自己需要使用的控制和管理信息,不可删除

3.4sys库--可以查询谁使用了最多的资源,哪种表访问最多

--------------------未完待续---------------------------

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值