SQL注入详解和简单绕过原理
生活随笔
收集整理的這篇文章主要介紹了
SQL注入详解和简单绕过原理
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、什么是SQL
結構化查詢語言(Structured Query Language)簡稱SQL
SQL使我們有能力訪問數據庫
2、什么是SQL注入
用戶提交的數據可以被數據庫解析執行
如果用戶隨隨便便提交的一些數據都可以讓后端的服務器去解析,那么這就是一個很大的問題
只要是前端寫的SQL語法被后端執行了,那么這就叫sql注入
3、SQL注入和簡單繞過原理詳解
index.html代碼如下
<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>SQL inject Tutorials</title> </head><body><form action="sqlinject.php" method="get"><p>name:<input type="text" name="name"/></p><p>name:<input type="text" name="pass"/></p><input type="submit" value="登錄" /></form></body> </html>sqlinject.php代碼如下
<?php/*Connect to a MySQL server 連接數據庫服務器*/$link=mysqli_connect('192.168.64.2', /*The host to connect 連接MySQL地址*/'myuser',/*The user to connect as 連接MySQL用戶名*/'my_password',/*The password to use 連接mysql密碼*/'test');/*The default database to query 連接數據庫名稱*/// echo $linkif(!$link){printf("cannot connect mysql server.Errorcode:%s",mysql_connect_error());exit;}elseecho '數據庫連上了!'."<br/>";if($result=mysqli_query($link,'SELECT * FROM student')){/*Fetch the result of query 返回查詢的結果*/while($row=mysqli_fetch_assos($result)){echo $row['name']," ","<br/>";}/*Destory the result set and free the memory used for it 結束查詢,釋放內存*/mysql_free_result($result);}/* close the connection 關閉連接*/mysqli_close($link);function logprint($content){echo $contend."</br>";}$name=$_GET['name'];$pass=$_GET['pass'];$sql="select * from admin where =".$pass;logprint($name);logprint($pass);logprint($sql);?>看看數據庫里面怎么操作:
打開XAMPP集成環境,啟動mysql
打開shell(mac版本是在XAMPP的General里面打開 Open Terminal)
輸入mysql -u root -p(我這里輸完之后直接回車,好像沒要密碼耶)
總結
以上是生活随笔為你收集整理的SQL注入详解和简单绕过原理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何绘制逻辑图— 4. 要素的属性:黑盒
- 下一篇: 氮化镓 服务器电源管理系统报价,基于氮化