A016:虛擬化技術及其資安應用

A016:虛擬化技術及其資安應用
授課講師:Yu-Sung Wu (交通大學教授、亥客書院講師)
適合修課對象:資安人員、軟體開發人員
課程簡介:
虛擬化技術已廣泛地被應用於雲端以及終端個人電腦等平台上。透過虛擬化技術,我們一方面可以更充分地利用底層硬體的資源,另一方面亦可透過虛擬化技術來隔離具有風險的程式,避免其對整體資訊系統造成危害。然而,虛擬化技術究竟是怎麼達成的? 在資訊安全上有何應用? 是否可靠? 相信是很多人心中會浮現的問題。
在本課程中,我們將就虛擬化背後的關鍵技術進行介紹,並透過實例的方式介紹虛擬化在資訊安全上的各項應用。期望藉此可增進大家對於虛擬化技術的了解,並進一步可借助其力提升資訊系統整體的安全性。
A016a:虛擬化技術概論(上午) A016b:虛擬化技術資安應用(下午)
  • Shadow Page table
  • Binary translation / Paravirtualization
  • x86硬體虛擬化技術
  • ARM硬體虛擬化技術
  • 虛擬機記憶體資源管理
  • 虛擬機管理指令(e.g. virsh)操作
  • 由原始碼編譯並安裝hypervisor
  • 虛擬機磁碟機內視技術
  • 虛擬機記憶體內視技術
  • 客體系統呼叫攔截

A015:進階網頁滲透測試

A015:進階網頁滲透測試
授課講師: Fan-Syun Shih (亥客書院講師)
適合修課對象:資安人員、網管人員、網頁開發人員
課程簡介:
滲透測試是由資通安全專家模擬駭客的攻擊行為,以找出企業資訊網路或系統中的漏洞,並提供修補建議以完善整體網路安全。
本課程將延續基礎滲透測試的知識與技能,提供近年來重大漏洞的實務滲透經驗分享、錯誤的程式修補、以及防禦繞過與漏洞利用的技巧,透過實務工具操作與練習,讓學員身歷其境了解網頁安全漏洞之理論與實務。
A015a:進階網頁滲透技術(上午) A015b:進階網頁滲透實驗(下午)
  • 網頁安全常見威脅簡介
  • 滲透測試流程簡介
  • 滲透測試各階段方法說明
  • 實務滲透案例與漏洞回報經驗談
  • 滲透測試自修資源分享
  • 滲透測試工具操作
  • 實務漏洞利用練習
  • 滲透測試測資產生

B006:軟體開發流程與版本控制 (全天)

B006:軟體開發流程與版本控制 (全天)
授課講師: Chong-Kuan Chen (亥客書院講師)、Chia-Wei Wang (亥客書院講師)
適合修課對象:軟體開發人員、專案管理人員
課程簡介:
大型軟體開發往往涉及多人團隊之合作,有效運用開發流程階段性規劃、結構化程式碼、版本控制與自動化整合測試將有助於提高開發效率並維護軟體品質以及強固性。本課程將以實戰為主,從軟體開發流程的大觀念進行介紹,並討論如何有結構性的組織程式碼以針對軟體各元件功能規格進行開發。接著透過Git之操作來解決程式碼多人協作上的同步、整合、與版本控制等問題,並介紹測試框架如GoogleTest之運用來提高軟體測試項撰寫之效率。最後以Git為邏輯核心之線上程式碼管理平台Github/Gitlab,結合travis Continuous Integration (travis CI)系統之使用,來實現軟體自動化整合測試之目標。
本課程將針對下列主題進行觀念講授、範例說明、以及課堂演練:

  • 軟體開發生命週期
  • 模組化程式碼設計
  • 開發流程與版本控制
  • 軟體測試框架
  • 軟體程式碼管理平台與自動化整合測試

建議背景知識:

  • C/C++程式設計
  • Linux基礎操作

B022:基礎網頁安全與滲透測試

B022:基礎網頁安全與滲透測試
授課講師: Pei-Te Chen (亥客書院講師)
適合修課對象:資安人員、網管人員、網頁開發人員
課程簡介:
滲透測試是一種檢驗系統安全強度的技術,透過各種專家知識和最佳法則(best practices)所研擬的流程方法,由一組安全技術團隊,以探察、分析、驗證到記錄的流程,模擬駭客的行為找出系統上邏輯性錯誤或更深層次的漏洞。
目前企業對外聯通管道主要以網頁與電子郵件為主,因此本課程將先說明基本滲透測試的知識與技能,了解目前國內外常見的網頁弱點,並實際操作具有弱點的虛擬網站,探討實務上的測試方式,了解潛在的安全威脅與問題。
B022a:基礎網頁安全(上午) B022b:基礎網頁滲透測試(下午)
  • Web應用程式安全趨勢
  • 網頁安全常見威脅
    • OWASP Top 10
    • CWE/SANS Top 25
  • CVSS與常見網頁攻擊手法
  • 滲透測試簡介
  • 常用之滲透測試方法論
  • 網頁滲透測試框架
  • 網頁滲透測試流程與細節
  • 網站應用程式弱點實作

B021:4G行動網路安全之潛在風險與檢測

B021:4G行動網路安全之潛在風險與檢測
授課講師:Chi-Yu Li (交通大學教授、亥客書院講師)
適合修課對象:4G網管人員、4G設備開發人員
課程簡介:
現行4G行動網路速度的大幅提升,帶動了更豐富和多元的行動應用,行動上網也因而愈趨普及。但是,4G行動網路卻有著潛在安全風險,此風險不僅可能對電信商造成危害,也有可能使得行動用戶暴露於被攻擊的威脅中。在此4G行動網路安全之課程中,我們將介紹目前行動網路之安全機制的潛在問題,以及計費和多媒體系統中的潛在安全風險,除了根據行動網路的設計原理剖析原因之外,並利用美國三大電信商的行動網路安全檢測案例,說明可能的攻擊方式和造成的危害。並且,我們將傳授如何針對所介紹之潛在安全風險加以檢測,且實作檢測工具。
B021a:4G網路安全之潛在風險(上午) B021b:4G網路安全之檢測工具實作(下午)
  • 認證(Authentication)和授權(Authorization)機制之潛在問題
  • 計費系統之潛在安全威脅
  • APP對於行動網路之潛在安全威脅
  • 簡訊系統(SMS)之潛在安全風險
  • 新世代高音質通話系統(VoLTE)之潛在安全風險
  • 認證(Authentication)和授權(Authorization)機制之檢測工具實作
  • 計費系統安全之檢測工具實作
  • 對威脅行動網路安全APP之檢測工具實作
  • 簡訊系統(SMS)安全之檢測工具實作
  • 新世代高音質通話系統(VoLTE)安全之檢測工具實作

B008:程式安全-緩衝區溢位攻擊與預防

B008:程式安全-緩衝區溢位攻擊與預防
授課講師: Fu-Hau Hsu (中央大學教授、亥客書院講師)
適合修課對象:軟體開發人員、系統管理人員
課程簡介:
本課程介紹系統安全的一項重要議題 -「緩衝區溢位攻擊」。課程將先從process的layout 介紹起,接者再說明process的堆疊段的使用方式,與每一個function的activation record架構與功能。在了解process存放輸入資料的方式後,課程將介紹攻擊者如何在程式沒有妥善處理輸入資料的情況下,注入自己的程式碼,並發起緩衝區溢位攻擊。接著課程將介紹緩衝區溢位攻擊一種變形 -「return-into-libc 攻擊」,與了解return-into-libc 攻擊所需知道的字串參數的傳遞方式與compiler為每個function所加入的function prologue與 function epilogue的功能。
B008a:緩衝區溢位攻防概論(上午) B008b:緩衝區溢位攻防實驗(下午)
  • process layout 與process堆疊段使用方式
  • activation record 架構與功能
  • 緩衝區溢位攻擊
  • 字串參數的傳遞方式、function prologue、function epilogue
  • return-into-libc 攻擊
  • 初級緩衝區溢位攻擊
  • 進階緩衝區溢位攻擊
  • 初級return-into-libc攻擊
  • 進階return-into-libc攻擊

A001:軟體脅迫、測試與除錯 (全天)

A001:軟體脅迫、測試與除錯 (全天)
授課講師: Shih-Kun Huang (交通大學教授、亥客書院講師)
適合修課對象:軟體開發人員、軟體測試人員
課程簡介:
脅迫生成(exploit generation) 是軟體攻防的重要技術,給定一個執行程式,藉由脅迫生成技術,可產生能有效攻擊該程式的測試資料,並藉此執行惡意程式碼。
在本課程中,我們將從軟體品質與程式撰寫相關議題開始,接著探討與整體系統安全的相關性,最後將進行脅迫生成的實務演練。透過本課程,學員將學習測試與除錯之相關技術,並嘗試開發軟體安全脅迫測資。

本課程將針對下列主題進行觀念講授、範例說明、以及課堂演練:

  • 針對安全性之軟體測試 (Software Testing for Security)
  • 以漏洞偵測為目的之軟體除錯 (Debugging for Finding Vulnerability)
  • 符號執行及脅迫產生 (Symbolic Execution and Exploit Generation)

B001:因應攻擊之防禦策略與應變處理

B001:因應攻擊之防禦策略與應變處理
授課講師:Shiuhpyng Shieh (交通大學特聘教授、亥客書院副院長)
適合修課對象:資訊主管、資安決策人員、資安政策制定人員
課程簡介:
隨著社會的資訊化與網路化,現今的資安威脅不論是種類或威脅程度均較以往大幅增加,除了各種技術性的防護措施之外,企業或政府組織在擬定資安策略或是政策時,亦必須同時將資安納入考量,以避免鑄成技術所難以彌補的結構性的資安威脅。舉例而言,進階持續性威脅(APT)可透過多種途徑進行攻擊,傳統的防火牆或是入侵偵測系統對此保護力有限,必須依靠整體的政策制定、人員訓練、與技術防護共同搭配,才能減低威脅。
因此,本課程將針對各種重要的資安議題,如APT 、隱私資訊處理、加密工具的使用、網頁漏洞與滲透測試、勒索軟體等,以案例研討的方式增進學員在政策制訂、防禦決策、與應變處理的能力。
B001a:資料與系統防護篇(上午) B001b:網路防護篇(下午)
  • 公開資料的隱私-以發票資訊為例
    可線上存取的公開資料
    – 資料的關聯性
    – 關聯性的複雜度
    實際案例:以電子發票系統為例
    – 案例簡介
    – 系統設計與架構說明
    – 結果分析
  • 加密工具的漏洞及誤用案例分析
    – 常見的加密工具簡介
    – 常見的加密工具誤用
    – 如何正確使用加密工具
  • 勒索軟體預防與應變
    – 勒索軟體簡介與原理介紹
    – 勒索軟體預防(備份, 防毒, 沙箱隔離, 資安教育)
    – 程式行為分析
    – 勒索軟體解密工具
  • 防火牆與入侵偵測系統
    – 防火牆基礎介紹
    – 防火牆實際應用案例及其限制
    – 入侵偵測系統應用案例及其限制
  • 進階持續性威脅(APT)案例分析與鑑識
    – APT案例:社交工程與email認證安全
    – 數位鑑識Demo與案例
    – 沙箱分析Demo與案例
    – APT防禦準則
  • 網頁安全威脅與網頁滲透測試
    – 網頁安全簡介
    – SQL Injection, XSS等攻擊技巧簡介
    – 案例探討
    – 網頁滲透測試簡介(SQLMap, WPA,….)
    – 自動滲透測試工具演示

Metasploit 滲透測試工具訓練班-大綱

第一天

  • Module 0: Introduction
    • Your name, role, and expectation of the course
  • Module 2: The Basics
    • Setup your own Penetration Lab
    • Configure virtual network using VMware Workstation or Player
    • Launch your testing machine and virtual targets
  • Module 1: The Penetration Testing Framework
    • What is penetration testing
    • Why is penetration testing important
    • A Defense Perspective
    • An Offence Perspective
    • The Methodology
    • Recon / Scan
    • Vulnerability Assessment
    • Exploits Attack
    • Post Exploitation
  • Lab 1 Build the Lab Environment
    • Kali Linux basic commands (cat etc/issue, find, locate, ls –al, ps aux, …)
  • Lab 2 Execute Basic Linux Commands (Kali Linux)
    • Understanding “Remote Hacking”
    • Bind Shell
    • Reverse Shell
  • Lab 3 Bind Shell and Reverse Shell
  • Module 3: Target Scan
    • The autonomy of port scans
    • TCP Syn Scan
    • UDP Scan
    • Scan Tools – Nmap
    • Discover ports and protocols
    • Discover vulnerabilities
  • Lab 4 Nmap Scan in Action
  • Module 4: Exploits using Metasploit Framework
    • Getting a Reverse shell
    • Metasploit framework exploit overview
    • Select the attack module
    • Select the Payload
    • Metasploit Merterpreter Shell
    • Merterpreter commands
  • Lab 5 Metasploit In Action

第二天

  • Day 1 Recap
  • Module 5: Web Applications Exploits
    • Web Applications Exploits
    • SQL Injection
    • Cross Site Scripting
  • Lab 6 Web Application Exploits
    • Web Application Exploits – Proxy Based Exploits
    • How to become man in the middle?
    • Using Firefox plugins
    • Using Burp
  • Module 6: Binary Exploits
    • Buffer overflow basic
    • A simple buffer over application
    • Basic x86 Architecture
    • CPU registers that matter
    • Exploit Development
    • Crash the application using buffer overflow
    • Locate EIP
    • Locate exploitable buffer
    • Control EIP
    • Identify any “Bad Characters”
    • Locate “JMP ESP”
    • Generate the Payload