PHP Web安全開發(fā)實(shí)戰(zhàn)
定 價(jià):59 元
叢書名:高等學(xué)校計(jì)算機(jī)基礎(chǔ)教育教材精選
- 作者:湯青松
- 出版時(shí)間:2018/9/1
- ISBN:9787302511274
- 出 版 社:清華大學(xué)出版社
- 中圖法分類:TP393.092
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書結(jié)合在安全方面的開發(fā)經(jīng)驗(yàn),站在開發(fā)者的角度,循序漸進(jìn)地介紹了大量實(shí)際發(fā)生的漏洞案例,并給出了技術(shù)解決方案,包括:常見的網(wǎng)絡(luò)攻擊、代碼安全、前端腳本安全、后端應(yīng)用安全、賬戶安全、加解密認(rèn)證、SQL注入以及服務(wù)器配置等內(nèi)容。通過閱讀本書,讀者能夠?qū)φ麄(gè)網(wǎng)絡(luò)安全有一個(gè)全新的認(rèn)識(shí)和深入的理解,從而成為一位懂安全、會(huì)防護(hù)的工程師,避免在工作中成為黑客攻擊的對(duì)象。本書適合PHP開發(fā)人員、網(wǎng)絡(luò)維護(hù)人員以及對(duì)網(wǎng)絡(luò)安全攻防技術(shù)感興趣的讀者閱讀。
從常見的網(wǎng)絡(luò)攻擊入手,介紹代碼安全、前端腳本安全、后端應(yīng)用安全、賬戶安全、加解密及認(rèn)證技術(shù)、SQL注入以及服務(wù)器配置防護(hù)等安全知識(shí),以案例揭示安全漏洞并提供解決方案。
前 言在準(zhǔn)備寫這本書的時(shí)候參考了很多Web安全方面的資料和書籍,我發(fā)現(xiàn)很多書籍和資料都是從攻擊者的角度來講述Web安全的。為了防止本書和其他的書籍以及相關(guān)資料同質(zhì)化,在規(guī)劃本書的時(shí)候,特意從PHP開發(fā)者的角度出發(fā),目的是讓開發(fā)者提升安全開發(fā)的能力,書中會(huì)講到目前Web安全中的常見漏洞、相關(guān)的漏洞案例、最佳的安全防范方法,以及我自己的觀點(diǎn),希望能幫到需要提升安全知識(shí)的PHP從業(yè)者。本書內(nèi)容第1章 信息泄露此書面向安全意識(shí)薄弱的開發(fā)者,因此在第1章中帶領(lǐng)讀者入門,主要介紹攻擊者在攻擊服務(wù)器時(shí)在前期如何探查服務(wù)器信息,攻擊者有哪些手段來挖掘漏洞,讓讀者能夠快速了解漏洞是如何被發(fā)現(xiàn)的。第2章 常規(guī)漏洞講解開發(fā)者在編碼過程中,因缺乏安全意識(shí)或遺漏而導(dǎo)致的安全問題;同時(shí)通過生動(dòng)的案例分析來說明攻擊者是如何發(fā)現(xiàn)此類安全問題的;最后在章節(jié)末尾會(huì)提到開發(fā)者如何規(guī)避這些編碼導(dǎo)致的安全問題。第3章 業(yè)務(wù)邏輯安全在設(shè)計(jì)一些業(yè)務(wù)的時(shí)候,不僅編碼會(huì)產(chǎn)生安全漏洞,業(yè)務(wù)同樣會(huì)產(chǎn)生大問題,比如常見的越權(quán)漏洞、支付漏洞、驗(yàn)證碼問題,這些問題其實(shí)在設(shè)計(jì)功能之初就應(yīng)該考慮到項(xiàng)目計(jì)劃中去。第4章 LANMP安全配置對(duì)于PHP開發(fā)者來說,一定離不開Nginx、Apache、MySQL、PHP、Redis等配置,不過這些配置并不會(huì)經(jīng)常用到,通常是配置一次,后面就不用再理會(huì)。這也導(dǎo)致了開發(fā)者因?yàn)閷?duì)配置的陌生而出現(xiàn)不少安全問題,本章會(huì)總結(jié)出因?yàn)榕渲貌划?dāng)而帶來的安全問題,同時(shí)也會(huì)給出正確的安全配置建議。第5章 認(rèn)證與加密在進(jìn)行業(yè)務(wù)開發(fā)的過程中,我們很頻繁地使用加密與解密,但對(duì)其底層原理卻了解得甚少,甚至部分開發(fā)者無法分清認(rèn)證與加密的區(qū)別,本章主要介紹加密和認(rèn)證的相關(guān)技術(shù),以幫助開發(fā)人員了解其技術(shù)特點(diǎn),從而開發(fā)出安全的應(yīng)用。第6章 其他Web安全主題攻擊者的攻擊方式是多樣的,我們?cè)诜婪栋踩珕栴}的同時(shí),一定要有重點(diǎn)目標(biāo),所以本章會(huì)提到漏洞的危險(xiǎn)等級(jí)劃分、CMS引起的漏洞如何防御、對(duì)自身的業(yè)務(wù)如何安全測試、在測試的同時(shí)如何提升效率,本章還會(huì)介紹兩款經(jīng)典的安全檢測工具: Burp Suite和SQLMap,讓讀者能夠?qū)ψ约洪_發(fā)的產(chǎn)品進(jìn)行安全檢測。本書讀者對(duì)象這本書面向懂PHP開發(fā)但不擅長安全方面的開發(fā)者,可以通過此書讓你在Web安全方面快速成長,在書中列出了很多互聯(lián)網(wǎng)的漏洞案例,目的是讓讀者看了之后更加了解攻擊者是如何發(fā)現(xiàn)漏洞的,從而讓開發(fā)者在開發(fā)時(shí)能夠?qū)ΠY下藥。由于編者水平有限,雖已盡力,但書中肯定還會(huì)存在許多不妥甚至謬誤,敬請(qǐng)廣大讀者和專家不吝指教,非常感謝。
湯青松2018年4月于北京
湯青松,2017 PHP全球開發(fā)者大會(huì)安全話題演講嘉賓,前烏云眾測研發(fā)工程師,慕課網(wǎng)Web安全方向高級(jí)講師;現(xiàn)工作于中國婚博會(huì),負(fù)責(zé)技術(shù)實(shí)現(xiàn)與數(shù)據(jù)安全方面的工作。
目 錄第1章 信息泄露11.1 主機(jī)信息11.1.1 子域名信息21.1.2 端口信息51.1.3 域名注冊(cè)信息101.1.4 網(wǎng)站后臺(tái)地址121.2 源碼泄露141.2.1 Git源碼泄露151.2.2 SVN源碼泄露171.2.3 .DS_Store文件泄露181.2.4 網(wǎng)站備份壓縮文件201.2.5 WEB-INF/web.xml泄露211.2.6 防御方案241.3 賬戶弱口令241.3.1 漏洞成因241.3.2 漏洞危害251.3.3 漏洞案例261.3.4 防范方法29第2章 常規(guī)漏洞312.1 SQL注入312.1.1 注入方式322.1.2 漏洞的3種類型392.1.3 檢測方法412.1.4 防范方法432.1.5 代碼審查452.1.6 小結(jié)472.2 XSS跨站472.2.1 XSS漏洞類型482.2.2 漏洞危害512.2.3 防范方法542.2.4 操作實(shí)踐562.2.5 代碼審查582.2.6 小結(jié)592.3 代碼注入與命令執(zhí)行592.3.1 漏洞類型602.3.2 漏洞案例622.3.3 防御方法652.3.4 命令執(zhí)行652.3.5 小結(jié)672.4 CSRF跨站請(qǐng)求偽造672.4.1 原理分析672.4.2 漏洞案例682.4.3 操作實(shí)踐722.4.4 防御方法732.4.5 防御代碼示例742.4.6 小結(jié)752.5 文件包含762.5.1 漏洞成因762.5.2 本地文件包含762.5.3 遠(yuǎn)程文件包含792.5.4 測試方法822.5.5 使用PHP封裝協(xié)議832.5.6 小結(jié)842.6 文件上傳漏洞852.6.1 利用方式852.6.2 上傳檢測862.6.3 解析漏洞872.6.6 小結(jié)92第3章 業(yè)務(wù)邏輯安全933.1 驗(yàn)證碼安全933.1.1 圖片驗(yàn)證碼943.1.2 數(shù)字暴力破解983.1.3 空驗(yàn)證碼突破993.1.4 繞過測試1013.1.5 憑證返回1023.1.6 小結(jié)1033.2 密碼找回1033.2.1 敏感信息泄露1043.2.2 郵箱弱token1053.2.3 驗(yàn)證的有效性1063.2.4 注冊(cè)覆蓋1073.2.5 小結(jié)1093.3 接口盜用1093.3.1 API盜用1093.3.2 短信轟炸1113.4 賬戶越權(quán)1163.4.1 未授權(quán)訪問1163.4.2 水平越權(quán)1183.4.3 垂直越權(quán)1203.4.4 小結(jié)1213.5 支付漏洞1213.5.1 支付流程分析1223.5.2 金額數(shù)據(jù)篡改1233.5.3 商品數(shù)量篡改1253.5.4 運(yùn)費(fèi)金額修改1273.5.5 小結(jié)1283.6 SSRF服務(wù)端請(qǐng)求偽造1293.6.1 漏洞成因1293.6.2 漏洞案例1313.6.3 總結(jié)134第4章 LANMP安全配置1354.1 PHP安全配置1354.2 PHP安全擴(kuò)展1394.2.1 taint簡介1394.2.2 安裝taint1404.2.3 測試驗(yàn)證1414.2.4 小結(jié)1444.3 Apache安全配置1444.3.1 屏蔽版本信息1444.3.2 目錄權(quán)限隔離1454.3.3 關(guān)閉默認(rèn)主機(jī)1454.3.4 低權(quán)限運(yùn)行1454.3.5 防止用戶自定義設(shè)置1454.3.6 禁止顯示目錄1464.4 Nginx安全配置1484.4.1 配置防御1484.4.2 防止權(quán)限擴(kuò)大1494.4.3 WAF擴(kuò)展1504.4.4 Nginx解析漏洞1524.5 Redis配置1544.5.1 漏洞成因1544.5.2 漏洞案例1564.5.3 小結(jié)1574.6 MySQL安全配置1574.6.1 權(quán)限安全1574.6.2 網(wǎng)絡(luò)配置1624.6.3 MySQL日志1634.6.4 主機(jī)配置1644.6.5 啟動(dòng)選項(xiàng)165第5章 認(rèn)證與加密1675.1 數(shù)據(jù)加密與簽名1675.1.1 對(duì)稱加密與非對(duì)稱加密1675.1.2 數(shù)字簽名1695.1.3 數(shù)字證書1705.2 HTTPS安全1715.2.1 HTTPS簡介1715.2.2 HTTPS被攻擊的方式1735.2.3 常見誤區(qū)1745.3 密碼加密策略1755.3.1 密碼存儲(chǔ)1765.3.2 密碼傳輸1785.3.3 漏洞案例1785.3.4 總結(jié)180第6章 其他Web安全主題1816.1 DDoS攻擊1816.1.1 DDoS分類1826.1.2 應(yīng)對(duì)方案1836.1.3 漏洞案例1846.1.4 小結(jié)1866.2 CMS通用漏洞1866.2.1 漏洞簡介1866.2.2 等級(jí)劃分1876.2.3 漏洞案例1886.2.4 防御方法1916.3 網(wǎng)頁掛馬1926.3.1 掛馬類型1936.3.2 掛馬檢測1946.3.3 小結(jié)1966.4 Burp Suite1966.4.1 攔截?cái)?shù)據(jù)包1976.4.2 修改數(shù)據(jù)包1986.4.3 頁面鏈接抓取1996.4.4 自動(dòng)化挖掘2016.4.5 暴力破解2016.5 SQLMap2036.5.1 查看數(shù)據(jù)庫賬戶2056.5.2 查看數(shù)據(jù)庫中的所有賬戶2066.5.3 獲取所有數(shù)據(jù)庫名稱2076.5.4 獲取數(shù)據(jù)庫表名稱2086.5.5 查看表結(jié)構(gòu)2096.5.6 導(dǎo)出數(shù)據(jù)210