PHP代码审计系列基本文案(一)之SQL注入漏洞篇
<h2 style="color: black; text-align: left; margin-bottom: 10px;">1.SQL注入原理</h2>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">SQL注入<span style="color: black;">便是</span>攻击者<span style="color: black;">经过</span>把恶意的SQL语句<span style="color: black;">插进</span>到Web表单的输入页面中,且<span style="color: black;">插进</span>的恶意语句会<span style="color: black;">引起</span>原有的SQL语句<span style="color: black;">出现</span>改变,从而达到攻击者的目的去让它执行<span style="color: black;">有些</span>危险的数据操作,进一步<span style="color: black;">诈骗</span>服务器去执行<span style="color: black;">有些</span>非本意的操作。简单来讲,所有<span style="color: black;">能够</span><span style="color: black;">触及</span>到数据库增删改查的系统功能点都有可能存在SQL注入漏洞。</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">一个简单的攻击原理举例:</p>
<div style="color: black; text-align: left; margin-bottom: 10px;"><img src="https://pic2.zhimg.com/80/v2-61a22c42a043a89d9d77e580363af31d_720w.webp" style="width: 50%; margin-bottom: 20px;"></div>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">在SQL注入中,<span style="color: black;">咱们</span>更应该关注的是业务<span style="color: black;">规律</span>,例如业务中可能设计到的增删改查操作,下面<span style="color: black;">经过</span>一个简单的代码小demo来进行SQL注入的演示:</p>
<div style="color: black; text-align: left; margin-bottom: 10px;"><!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>SQL注入小demo</title>
</head>
<body>
用户名:
<form method="GET"> //form表单<span style="color: black;">经过</span>get方式接收数据
<input type="text" name="name" size="50" /> //<span style="color: black;">经过</span>name参数接收数据
<br>
<input type="submit" value="点击<span style="color: black;">查找</span>" style="margin-top:50px;">
<?php
$db = mysqli_connect("localhost","root","123456","demo"); //<span style="color: black;">创立</span>mysql连接
if(!$db){
echo "数据库链接失败!";
exit();
}
$name = $_GET; //<span style="color: black;">经过</span>前端设置的name参数将数据接收到后端进行处理
$sql = "select * from user where name = ".$name.";";
echo " 输出当前执行的SQL主句:".$sql."";
$result = mysqli_query($db,$sql); //执行SQL语句
while($row=mysqli_fetch_array($result)) //取出一行数据的所有内容以数组的形式返回
{
echo "账号:".$row.""; //输出一行数据的user字段值
echo "<span style="color: black;">暗码</span>:".$row."";//输出一行数据的passwd字段值
}
mysqli_close($db);//关闭mysql连接
?>
</form>
</body>
</html></div>
<h3 style="color: black; text-align: left; margin-bottom: 10px;">1.1 PHP MySQLi基本函数</h3>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">PHP MySQLi 函数<span style="color: black;">准许</span><span style="color: black;">拜访</span> MySQL 数据库服务器。通俗<span style="color: black;">来讲</span>MySQLi 下的函数用来处理PHP中关于数据增删改查的操作。</p>
<h3 style="color: black; text-align: left; margin-bottom: 10px;">mysqli_connect()</h3>
我赞同你的看法,你的智慧让人佩服,谢谢分享。 交流如星光璀璨,点亮思想夜空。 哈哈、笑死我了、太搞笑了吧等。 真情实感,其含义为认真了、走心了的意思,是如今的饭圈常用语。
页:
[1]