ThinkPHP之SQL注入

今天分享一個(gè)Thinkphp安全方面的知識:SQL注入篇

1. 什么是SQL注入懈词?

??????利用現(xiàn)有應(yīng)用程序童叠,將(惡意)的SQL命令注入到后臺數(shù)據(jù)庫執(zhí)行一些惡意的操作。這是黑客對數(shù)據(jù)庫進(jìn)行攻擊的常用手段之一嫁蛇。

2. 導(dǎo)致SQL注入原因

??????程序在編寫的時(shí)候锨并,沒有對輸入的數(shù)據(jù)的合法性進(jìn)行判斷,注入者可在表單中輸入一段數(shù)據(jù)庫查詢代碼并提交睬棚,程序可將提交的信息組成一條sql語句第煮,服務(wù)器執(zhí)行該條sql語句。注入者可根據(jù)程序返回的結(jié)果抑党,獲取一些敏感數(shù)據(jù)包警,甚至控制整個(gè)服務(wù)器。

3. ThinkPHP如何防止sql注入底靠?(個(gè)人整理的一些建議)

  • 查詢條件盡量使用數(shù)組方式害晦,這是更為安全的方式
  • 如果不得已必須使用字符串查詢條件,使用預(yù)處理機(jī)制
  • 使用自動驗(yàn)證自動完成機(jī)制進(jìn)行針對應(yīng)用的自定義過濾暑中;
  • 如果環(huán)境允許壹瘟,盡量使用PDO方式,并使用參數(shù)綁定鳄逾。

防止措施:

  • 使用數(shù)組方式將自動使用框架自帶的字段類型檢測防止注入
     //獲取正常的id值
    $_GET['id'] = 8; 
    //直接將數(shù)據(jù)放入where條件
    $data = M('User')->where('id='.$_GET['id'])->find();
    //此時(shí)用于若是傳遞“異车竟欤”的id
    $_GET['id'] = '8 or status = 1';
    
    //解決方式:可以使用數(shù)組方式來傳遞數(shù)據(jù)
    $data = M('User')->where(array('id'=>$_GET['id']))->find();
    
  • 使用預(yù)處理機(jī)制
     $data = M('User')->where(("id=%d and username='%s'",array($id,$username))->select();
    
  • 對獲取的數(shù)據(jù)進(jìn)行類型約束
    $data = M('User')->where(array('id'=>(int)$_GET['id']))->find();
    
  • 對類型進(jìn)行強(qiáng)制轉(zhuǎn)換
    $data = M('User')->where(array('id'=>I('get,id',’’,’intval’)))->find();
    
  • PDO驅(qū)動可以使用參數(shù)綁定
     $data = M('User')->where(array('id'=>':id'))->bind(':id',I('get.id'))->select();
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市雕凹,隨后出現(xiàn)的幾起案子澄者,更是在濱河造成了極大的恐慌,老刑警劉巖请琳,帶你破解...
    沈念sama閱讀 211,290評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件粱挡,死亡現(xiàn)場離奇詭異,居然都是意外死亡俄精,警方通過查閱死者的電腦和手機(jī)询筏,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評論 2 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來竖慧,“玉大人嫌套,你說我怎么就攤上這事』迹” “怎么了踱讨?”我有些...
    開封第一講書人閱讀 156,872評論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長砍的。 經(jīng)常有香客問我痹筛,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,415評論 1 283
  • 正文 為了忘掉前任帚稠,我火速辦了婚禮谣旁,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘滋早。我一直安慰自己榄审,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,453評論 6 385
  • 文/花漫 我一把揭開白布杆麸。 她就那樣靜靜地躺著搁进,像睡著了一般。 火紅的嫁衣襯著肌膚如雪昔头。 梳的紋絲不亂的頭發(fā)上饼问,一...
    開封第一講書人閱讀 49,784評論 1 290
  • 那天,我揣著相機(jī)與錄音减细,去河邊找鬼。 笑死赢笨,一個(gè)胖子當(dāng)著我的面吹牛未蝌,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播茧妒,決...
    沈念sama閱讀 38,927評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼萧吠,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了桐筏?” 一聲冷哼從身側(cè)響起纸型,我...
    開封第一講書人閱讀 37,691評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎梅忌,沒想到半個(gè)月后狰腌,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,137評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡牧氮,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,472評論 2 326
  • 正文 我和宋清朗相戀三年琼腔,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片踱葛。...
    茶點(diǎn)故事閱讀 38,622評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡丹莲,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出尸诽,到底是詐尸還是另有隱情甥材,我是刑警寧澤,帶...
    沈念sama閱讀 34,289評論 4 329
  • 正文 年R本政府宣布性含,位于F島的核電站洲赵,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜板鬓,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,887評論 3 312
  • 文/蒙蒙 一悲敷、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧俭令,春花似錦后德、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至赫蛇,卻和暖如春绵患,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背悟耘。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工落蝙, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人暂幼。 一個(gè)月前我還...
    沈念sama閱讀 46,316評論 2 360
  • 正文 我出身青樓筏勒,卻偏偏與公主長得像,于是被迫代替她去往敵國和親旺嬉。 傳聞我的和親對象是個(gè)殘疾皇子管行,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,490評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 十一點(diǎn)了,潤作業(yè)還沒做完邪媳,其實(shí)今天的作業(yè)不多捐顷,一張語文試卷和讀后感,數(shù)學(xué)口算雨效。為什么就一點(diǎn)作業(yè)還要做到這么晚呢迅涮?我...
    向往精靈閱讀 304評論 0 0
  • 后來回想逗柴,我覺得我是再不能和他在一起了,就像我與他后來相隔倆地顿肺,狠狠地在中國劃了一條斜線戏溺,最遠(yuǎn)的距離,也莫過于此了...
    帝國主義狗咬狗閱讀 212評論 0 0
  • 東鳳續(xù)寫《三生三世十里珠簾》目錄三生三世十里珠簾 (51) 珈絡(luò)細(xì)若凝脂的臉上有些微微泛紅屠尊,“他應(yīng)該不會告訴你旷祸,去...
    霍子茉閱讀 24,943評論 54 130
  • 根據(jù)相關(guān)數(shù)據(jù)顯示瓜子二手車成立至今已經(jīng)進(jìn)行了4輪融資托享,而今年年初,瓜子二手車又傳出了第5輪融資的消息。從瓜子二手車...
    大麗說閱讀 1,785評論 0 1
  • 一直很關(guān)注體重的控制闰围,機(jī)緣湊巧收聽了一檔“如何吃出易瘦體質(zhì)”的線上課程赃绊,整理分享。 所謂易瘦體質(zhì)其實(shí)就...
    丫丫笑語閱讀 306評論 4 4