班級(jí)規(guī)模及環(huán)境--熱線(xiàn):4008699035 手機(jī):15921673576( 微信同號(hào)) |
每期人數(shù)限3到5人。 |
上課時(shí)間和地點(diǎn) |
上課地點(diǎn):【上海】:同濟(jì)大學(xué)(滬西)/新城金郡商務(wù)樓(11號(hào)線(xiàn)白銀路站) 【深圳分部】:電影大廈(地鐵一號(hào)線(xiàn)大劇院站)/深圳大學(xué)成教院 【北京分部】:北京中山學(xué)院/福鑫大樓 【南京分部】:金港大廈(和燕路) 【武漢分部】:佳源大廈(高新二路) 【成都分部】:領(lǐng)館區(qū)1號(hào)(中和大道) 【沈陽(yáng)分部】:沈陽(yáng)理工大學(xué)/六宅臻品 【鄭州分部】:鄭州大學(xué)/錦華大廈 【石家莊分部】:河北科技大學(xué)/瑞景大廈 【廣州分部】:廣糧大廈 【西安分部】:協(xié)同大廈
最近開(kāi)課時(shí)間(周末班/連續(xù)班/晚班):2020年3月16日 |
實(shí)驗(yàn)設(shè)備 |
☆資深工程師授課
☆注重質(zhì)量
☆邊講邊練
☆合格學(xué)員免費(fèi)推薦工作
★實(shí)驗(yàn)設(shè)備請(qǐng)點(diǎn)擊這兒查看★ |
質(zhì)量保障 |
1、培訓(xùn)過(guò)程中,如有部分內(nèi)容理解不透或消化不好,可免費(fèi)在以后培訓(xùn)班中重聽(tīng);
2、培訓(xùn)結(jié)束后,授課老師留給學(xué)員聯(lián)系方式,保障培訓(xùn)效果,免費(fèi)提供課后技術(shù)支持。
3、培訓(xùn)合格學(xué)員可享受免費(fèi)推薦就業(yè)機(jī)會(huì)。 |
課程大綱 |
|
Java安全開(kāi)發(fā)課程培訓(xùn)
?
培訓(xùn)介紹:
可以全方位了解Java開(kāi)發(fā)過(guò)程中遇到的各種容易忽視的安全問(wèn)題,及其防范方法。可以在今后的開(kāi)發(fā)過(guò)程中有意識(shí)的避免各種安全問(wèn)題,提高代碼質(zhì)量。
主?題
內(nèi)?容
培?訓(xùn)?目?標(biāo)
培訓(xùn)開(kāi)始
講師與學(xué)員自我介紹
課程目標(biāo)介紹
課程內(nèi)容介紹
使學(xué)員了解培訓(xùn)的目標(biāo)和內(nèi)容
數(shù)據(jù)輸入驗(yàn)證與數(shù)據(jù)清理
1、SQL注入,XML注入,regex注入攻擊原理與防范
了解系統(tǒng)輸入數(shù)據(jù)驗(yàn)證過(guò)程中的安全注意事項(xiàng),以及轉(zhuǎn)換和傳輸過(guò)程中的安全注意事項(xiàng)
2、字符串驗(yàn)證,路徑名驗(yàn)證以及日志記錄中的安全漏洞與防范
3、ZipInputStream與Runtime安全注意事項(xiàng)
4、字符串在編碼轉(zhuǎn)換,網(wǎng)絡(luò)傳輸中的安全注意事項(xiàng)
對(duì)象聲明與初始化過(guò)程中安全陷阱與防范
1、防范類(lèi)初始化的嵌套循環(huán)
了解對(duì)象聲明與初始化過(guò)程中安全陷阱與防范方法
2、不要重復(fù)使用Java標(biāo)準(zhǔn)庫(kù)中的公開(kāi)標(biāo)識(shí)符
3、循環(huán)相關(guān)變量聲明注意事項(xiàng)
表達(dá)式安全注意事項(xiàng)
1、不要忽略方法的返回值
了解表達(dá)式安全注意事項(xiàng)
2、不要引用空指針
3、數(shù)組內(nèi)容比較安全注意事項(xiàng)
4、‘==’和equals方法中的安全注意事項(xiàng)
5、原始數(shù)據(jù)封裝與運(yùn)算中的安全注意事項(xiàng)
數(shù)字類(lèi)型與操作安全
1、防范整數(shù)溢出
了解數(shù)字類(lèi)型變量聲明和操作中的各種安全問(wèn)題及其防范方法
2、單精度浮點(diǎn)數(shù)運(yùn)算相關(guān)安全問(wèn)題
3、strictfp的使用
面向?qū)ο蟀踩?br>
1、防范類(lèi)與方法的惡意擴(kuò)展
了解對(duì)象聲明,繼承,傳遞過(guò)程中的各種安全問(wèn)題及其防范方法
2、更新父類(lèi)引發(fā)的安全問(wèn)題
3、傳遞對(duì)象時(shí)使用copy功能
4、防范嵌套類(lèi)暴露外層類(lèi)的敏感信息
類(lèi)方法安全
1、類(lèi)方法參數(shù)的驗(yàn)證
了解類(lèi)方法實(shí)現(xiàn)過(guò)程中的各種安全問(wèn)題及避免方法
2、Assert相關(guān)安全注意事項(xiàng)
3、用private和final修飾執(zhí)行安全檢查的方法
4、降低被覆蓋方法與隱藏方法的可見(jiàn)性
5、其他類(lèi)方法相關(guān)的安全注意事項(xiàng)
異常處理中的安全問(wèn)題
1、?壓抑或忽視異常情況導(dǎo)致的安全問(wèn)題
了解異常處理中的安全問(wèn)題及防范方法
2、異常暴露敏感信息
3、防范日志記錄過(guò)程中的異常
4、finally相關(guān)安全問(wèn)題
5、不要拋出RuntimeException,Exception,或者Throwable異常
可見(jiàn)性與原子性
1、共享變量復(fù)合操作的原子性
了解共享變量訪(fǎng)問(wèn)和復(fù)合操作原子性相關(guān)的安全問(wèn)題及其防范方法
2、保證一連串的方法調(diào)用具有原子性
3、不要假定對(duì)一組相互獨(dú)立的方法的調(diào)用具有原子性
4、當(dāng)讀寫(xiě)64位數(shù)據(jù)時(shí)確保原子性
5、保證共享原始變量的可見(jiàn)性
輸入輸出安全
1、操作共享目錄的風(fēng)險(xiǎn)
了解輸入輸出中安全問(wèn)題及其防范方法
2、應(yīng)用程序結(jié)束前刪除所有臨時(shí)文件
3、檢測(cè)和處理文件相關(guān)的錯(cuò)誤
4、文件操作相關(guān)的其他安全問(wèn)題
序列化過(guò)程中安全
1、在class升級(jí)進(jìn)化過(guò)程中,維護(hù)序列化過(guò)程的兼容性
了解序列化過(guò)程中的安全問(wèn)題及防范方法
2、使用正確的序列化方法聲明方式
3、不要序列化非加密的敏感數(shù)據(jù)
4、在序列化過(guò)程中避免內(nèi)存和資源泄露
5、序列化過(guò)程中其他安全相關(guān)問(wèn)題
線(xiàn)程安全
1、不要對(duì)一個(gè)可能重用的對(duì)象加鎖
了解線(xiàn)程安全相關(guān)問(wèn)題及其防范方法
?
2、不要對(duì)getClass()方法返回的class對(duì)象進(jìn)行加鎖
?
?
3、線(xiàn)程API(run,ThreadGroup,stop)相關(guān)安全問(wèn)題
?
?
4、在一個(gè)線(xiàn)程池內(nèi)不要執(zhí)行相互依賴(lài)的任務(wù)
?
?
5、當(dāng)使用線(xiàn)程池時(shí),確保ThreadLocal變量重新初始化
?
平臺(tái)安全
1、不要允許特權(quán)模塊泄露敏感信息到受信區(qū)域之外
了解Java平臺(tái)相關(guān)的安全問(wèn)題及其防范方法
2、不允許特權(quán)模塊有受污染變量
3、不要使用反射機(jī)制增加類(lèi),方法和成員變量的可訪(fǎng)問(wèn)性
4、不要在非受信區(qū)域執(zhí)行安全檢查
運(yùn)行時(shí)環(huán)境安全
1、只執(zhí)行非特權(quán)操作的代碼不要進(jìn)行代碼簽名
了解Java運(yùn)行時(shí)環(huán)境安全相關(guān)問(wèn)題及其防范方法
2、把所有安全敏感相關(guān)的代碼放在一個(gè)單一的jar包中,進(jìn)行簽名封裝
3、不要進(jìn)行危險(xiǎn)的聯(lián)合授權(quán)
4、不要廢除二進(jìn)制碼的驗(yàn)證機(jī)制
培訓(xùn)結(jié)束
培訓(xùn)結(jié)束
培訓(xùn)總結(jié)及疑問(wèn)解答
?
?
?
·
?
?
?
?
?
?
?
?
?
?
?
?
?
?
|