曙海教學(xué)優(yōu)勢(shì)
本課程,秉承二十一年積累的教學(xué)品質(zhì),以項(xiàng)目實(shí)現(xiàn)為導(dǎo)向,面向企事業(yè)項(xiàng)目實(shí)際需要,老師將會(huì)與您分享設(shè)計(jì)的全流程以及工具的綜合使用經(jīng)驗(yàn)、技巧。課程可定制,線上/線下/上門(mén)皆可,熱線:4008699035。
曙海培訓(xùn)的課程培養(yǎng)了大批受企業(yè)歡迎的工程師。大批企業(yè)和曙海
建立了良好的合作關(guān)系,合作企業(yè)30萬(wàn)+。曙海培訓(xùn)的課程在業(yè)內(nèi)有著響亮的知名度。
主?題 |
內(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、防范類初始化的嵌套循環(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)-實(shí)戰(zhàn)案例分析 |
1、不要忽略方法的返回值 |
了解表達(dá)式安全注意事項(xiàng) |
2、不要引用空指針 |
||
3、數(shù)組內(nèi)容比較安全注意事項(xiàng) |
||
4、‘==’和equals方法中的安全注意事項(xiàng) |
||
5、原始數(shù)據(jù)封裝與運(yùn)算中的安全注意事項(xiàng) |
||
數(shù)字類型與操作安全-實(shí)戰(zhàn)操作 |
1、防范整數(shù)溢出 |
了解數(shù)字類型變量聲明和操作中的各種安全問(wèn)題及其防范方法 |
2、單精度浮點(diǎn)數(shù)運(yùn)算相關(guān)安全問(wèn)題 |
||
3、strictfp的使用 |
||
面向?qū)ο蟀踩?/font> |
1、防范類與方法的惡意擴(kuò)展 |
了解對(duì)象聲明,繼承,傳遞過(guò)程中的各種安全問(wèn)題及其防范方法 |
2、更新父類引發(fā)的安全問(wèn)題 |
||
3、傳遞對(duì)象時(shí)使用copy功能 |
||
4、防范嵌套類暴露外層類的敏感信息 |
||
類方法安全 |
1、類方法參數(shù)的驗(yàn)證 |
了解類方法實(shí)現(xiàn)過(guò)程中的各種安全問(wèn)題及避免方法 |
2、Assert相關(guān)安全注意事項(xiàng) |
||
3、用private和final修飾執(zhí)行安全檢查的方法 |
||
4、降低被覆蓋方法與隱藏方法的可見(jiàn)性 |
||
5、其他類方法相關(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ù)合操作的原子性 |
了解共享變量訪問(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)題 |
||
線程安全 |
1、不要對(duì)一個(gè)可能重用的對(duì)象加鎖 |
了解線程安全相關(guān)問(wèn)題及其防范方法 |
? |
2、不要對(duì)getClass()方法返回的class對(duì)象進(jìn)行加鎖 |
? |
? |
3、線程API(run,ThreadGroup,stop)相關(guān)安全問(wèn)題 |
? |
? |
4、在一個(gè)線程池內(nèi)不要執(zhí)行相互依賴的任務(wù) |
? |
? |
5、當(dāng)使用線程池時(shí),確保ThreadLocal變量重新初始化 |
? |
平臺(tái)安全 |
1、不要允許特權(quán)模塊泄露敏感信息到受信區(qū)域之外 |
了解Java平臺(tái)相關(guān)的安全問(wèn)題及其防范方法 |
2、不允許特權(quán)模塊有受污染變量 |
||
3、不要使用反射機(jī)制增加類,方法和成員變量的可訪問(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)解答 |