sqlmap防御以及文件读写

一.防御

过滤

1.使用过滤函数

email = filter_var(_POST['email'], FILTER_VALIDATE_EMAIL);

if ($email) { // input is a valid email address }

else { // input is not a valid email address

使用 filter_var() 函数和 FILTER_VALIDATE_EMAIL 过滤器来验证用户输入是否为有效的电子邮件地址,从而减少了发生 SQL 注入攻击的概率

2.过滤和转义用户输入

username = mysqli_real_escape_string(connection, $_POST['username']);

password = mysqli_real_escape_string(connection, $_POST['password']);

$query = "SELECT * FROM users WHERE username='" . $username . "' AND password='" . $password . "'"; result = mysqli_query(connection, $query);

使用 mysqli_real_escape_string() 函数对用户输入进行了转义。将转义后的值插入 SQL 查询字符串中,可以有效地防止 SQL 注入攻击。

布置waf 和安全设备

避免拼接方式工造sql语句

文件读写的条件

1.root权限

2.绝对路径

3.项secure_file_priv

案例

读取文件 load_file()函数

and 1=2 union select 1,load file("c:\\windows\\system32\\drivers\\etc\\hosts"),3

写入 into outfile

and 1=2 union select 1,"",3 into outfile "/var/www/html/1.php" 一句话木马

相关推荐
齐 飞12 分钟前
MongoDB笔记01-概念与安装
前端·数据库·笔记·后端·mongodb
云空12 分钟前
《Python 与 SQLite:强大的数据库组合》
数据库·python·sqlite
暮毅17 分钟前
10.Node.js连接MongoDb
数据库·mongodb·node.js
wowocpp20 分钟前
ubuntu 22.04 server 格式化 磁盘 为 ext4 并 自动挂载 LTS
服务器·数据库·ubuntu
成富42 分钟前
文本转SQL(Text-to-SQL),场景介绍与 Spring AI 实现
数据库·人工智能·sql·spring·oracle
songqq2743 分钟前
SQL题:使用hive查询各类型专利top 10申请人,以及对应的专利申请数
数据库·sql
计算机学长felix1 小时前
基于SpringBoot的“校园交友网站”的设计与实现(源码+数据库+文档+PPT)
数据库·spring boot·毕业设计·交友
小码的头发丝、2 小时前
Django中ListView 和 DetailView类的区别
数据库·python·django
Karoku0662 小时前
【企业级分布式系统】Zabbix监控系统与部署安装
运维·服务器·数据库·redis·mysql·zabbix
周全全2 小时前
MySQL报错解决:The user specified as a definer (‘root‘@‘%‘) does not exist
android·数据库·mysql