台灣駭客年會 HITCON CMT #14 - Training

Chain with the world,
Decrypt the future.
HITCON Community
Jul. 27-28 2018 in Taipei
南港展覽館 5F
Taipei Nangang Exhibition Center 5F


I : Blockchain

Blockchain Essentials

Date: 2018/7/24 - 25 (2-Day)

Lecturer: 謝宜達

NTD$ 22,00012小時中文

There are two sections in this course, lectures and the lab. During the lectures, we will introduce blockchain and its applications. We will also introduce Postchain, a framework of blockchain developed by Chromaway, a company from Sweden. During the lab, students will build the real applications by themselves. The objectives are to help participants build an easy blockchain network on their own and understand how Postchain works.


Lecture 1 --- Blockchain

- What is blockchain?

- History

- Consensus Algorithm


Lecture 2 --- Applications of blockchain

- Securities

- Smart Contracts

- Digital Currency

- Record keeping


Lecture 3 --- Postchain

- Introduction of Postchain



Pre-lab --- Simple introductions of JavaScript and PostgreSQL

- Roughly go through statements of JavaScript and PostgreSQL which are needed in the following exercises.


Exercise 1 --- Timestamp (Single node)

- Build a simple document timestamping system on a single node to prove that a certain entity was entered into the system at a certain time.


Exercise 2 --- Send Money (Single node)

- Build a very simple token issuance and transfer application on your own end.


Exercise 3 --- Digital Wallet (Multi-nodes)

- Kill nodes randomly to understand how PBFT (Practical Byzantine Fault Tolerance) works.

- Create a network with others by using the transfer application built in exercise 2. Try to make transactions with other people in the network.


  • Simple knowledge of JavaScript and SQL programming.
  • Simple knowledge of Linux OS.



  • A computer with a modern operating system.
  • Pre-install SSH tools in your computer.
  • Access to the internet.

II : Container Security

Microservice & Container Hacking

Date: 2018/7/24

Lecturer: YSc

NTD$ 17,0006小時中文

現今許多企業已使用微服務(Microservice)作為公司的基礎設施,且系統架構也開始使用「Kubernetes」來管理容器化(Containerized)的應用。但在部署和管理上,開發人員的配置錯誤(Misconfiguration)、環境或服務誤用(Service Misuse)、服務間認證(Authentication)等疏忽,常常產生了許多地方讓駭客可以攻擊並且成功滲透。


課程會從企業常用的 AWS、GCP 等雲端服務開始,介紹雲端平台上 Compute Engine、Cloud Storage、Load Balancer 等雲端服務在使用上的疏忽和資安問題,以及介紹微服務架構下,開發人員在服務間通訊(Service Communication)、api 開發、部署配置時等等的資安漏洞,並且實作對這些雲端平台、基礎設施(Infrastructure)的攻擊技巧。接者介紹容器相關的安全問題,針對開發人員在部署和使用 Docker 上的安全問題,以及 Kubernetes 在部署上、雲端平台提供的 k8s 建置與使用上容易疏忽的安全配置。藉由實際的攻擊手法來更加了解容器化架構和 k8s 的安全性問題,提出適合的防禦策略和配置。

學員先修技能:基本 Linux 知識、基本 Docker 知識

學員自備工具:學員自備筆電,並準備以下需求:Linux 系統環境、Docker

III : IoT Security

Basic IoT Analysis

Date: 2018/7/26

Lecturer: Forensics Ninja

NTD$ 17,0006小時中文

As rapidly grow up of the use if Internet of Things(IoT), it alerts our awareness of the devices. This course will tell you the basic attacks to the IoT devices in both Software and Hardware methods.


Students will learn:

- IoT Architecture

- IoT Attack Vector

- IoT Protocol

- ZigBee, BLE, JTAG, ISP

- IoT Firmware Analysis

- Use of the simple hacking hardware

- Identify the testing port of IoT

- Extracting and Analysing data from memory chips

學員先修技能:Basic Knowledge of IoT's control: Wireless & Physical connection

學員自備工具:學員自備筆電,並準備以下需求:VM Ware or Virtual Box installed.

IV : Malware


Date: 2018/7/24 - 26 (3-Day)

Lecturer: zha0

NTD$ 66,00018小時中文

從基礎說起,深入淺出,希望能成為入門的基石課程,從基礎組合語言及 C 中學習,切入作業系統基礎知識,分析惡意程式常見技巧,最後給出分析惡意程式的步驟及完整流程。



- 數碼系統

- 暫存器

- 指令集

- 走入保護模式



- 資料型態

- 功能及名詞解譯

- API使用及分類

- PE檔案格式

- 使用除錯程式了解系統機制

- 工具使用 Windbg/Ollydbg/IDA Pro



- 磁碟/檔案竄改

- 記憶体注入

- 開機啟動方式

- 偵測與查找

- 工具使用 Volatility/Windbg/Ollydbg



- 深入完整分析




Date: 2018/7/23

Lecturer: Po Huang

NTD$ 11,0006小時中文

提供資安鑑識領域中針對惡意程式記憶體鑑識分析之實務操作課程,讓學員對惡意程式(含新型態 APT 攻擊)感染之資安事件中,如何藉由記憶體鑑識分析來判斷受感染的主機,並解析出異常的程式、載入的函式、網路連線及其它相關資訊,藉由實作課程使學員能進行各項記憶分析技術練習。


1.) Windows memory dump and pagefile

2.) Windows memory key Artifact

- DKOM structure

- Process Sequence

- StartTime

- Load DLL


- Signature

- Root Path

- Instance

- Network Capability

- Process Argument

3).Memory Forensics Tools Installation(Open source: WinHex/Volatility/Redline)

4.) Memory basic analysis

- Memory Profile

- Process list

- Open Handles

- Current Network

- Process Tree

5.) Memory advanced analysis

- SSDT Hook

- IDT Hook

- IRP Hook

- IAT Hook analysis

- Injection (PE)

- Injection (None PE)

- Hidden Process detect

6.) Extract Malware Process/Extract Malware load DLL

7.) Free tool VS. Commercial tool


  • 具基本 Window 系統操作管理知識
  • 了解網路運作基本原理
  • 對 APT 現況有基本認知

學員自備工具:學員自備筆電,並準備以下需求:x64 Windows 作業系統,CPU i5,RAM 8G

V : Risk Management

Decode Risk Management in CyberSecurity

Date: 2018/7/25

Speaker:吳明璋 (Bright)

NTD$ 11,0006小時中文

根據台灣國家資通安全發展方案,2020年底將要培訓2千位資安人才。人才培育的範圍不僅限於政府,也擴大到產業。然而,風險管理課題通常在這些人才培育課程被忽視。為了結合不同的ISO國際標準,整合性ISO 27001、ISO 22301與ISO 31000架構將會探討。這個課程也會介紹風險思維的數位韌性流程與其八個步驟。基於風險管理的策略主軸,本課程將以案例、實務問題與解決方案進行雙向交流。從國際案例發展的實務情境,本課程將以桌面演練帶領分組討論,希望提供IT、資安團隊或緊急應變團隊之實務參考。

According to the new Taiwan’s National Cyber Security Program of Taiwan, 2,000 talents will be cultivated to work in the field of industrial cyber security by the end of 2020. The scope of talent development is not only for government, but also for industry. However, risk management is usually neglected in those talent development programs in Taiwan. To connect with different ISO standards, an integrated architecture will be analyzed by ISO 27001, ISO 22301 and ISO 31000. In addition, this course will introduce risk-based digital resilience framework and its 8 steps. Aligned with risk management strategy, this course will discuss case studies, issues and practical solutions. With some scenarios developed by international cases, the course would conduct tabletop drill to provide practical experiences for IT, information security or the emergency response team.


  • 亞洲資安動態 Cybersecurity update in Asia
  • 整合性ISO 架構 ISO Integrated Architecture: ISO 27001, ISO 22301, ISO 31000
  • 數位韌性框架 Proposed Digital Resilience Framework
  • 實務案例 Case study
  • 桌面演練 Tabletop Drill



VI : Web Security

Practical Web Hacking and Exploitation

Date: 2018/7/23 - 24 (2-Day)


NTD$ 33,00012小時中文

This course will focus on advanced vulnerability identification and exploitation techniques and allow attendees to get familiar with some tricky but decent ways that were actually used and exploited in the real world. Several hands-on practices demonstrating different possible scenarios will be given while we go through chapters of the course. Hence, attendees will gain experience when trying their best to carry out an attack they just learned. There will be also several new techniques being shown during the course exclusively, which can give attendees the insight into the problems of vulnerability.


A quick review of the latest OWASP TOP 10 and some case studie

Lab 1:Not-so-Easy practices

XSS - From old tricks to surprising mutations

SQL Injection - Various types of exploitations and rationales behind these attacks


Lab 2:Hands-on practices part one

- Go through some bug-bounty write-ups

- Neat and novel exploitation techniques come out because of new languages and frameworks


Lab 3:Hands-on practices part two

- How to defend against malicious payloads? Talking about traditional and innovative detection methodology.

- The future and possibility of the automatic exploit generation for web applications


Of the course:

  • Understanding of basic concepts of HTML and JavaScript
  • Know how an HTTP request or response flows

Of the tools or extensions used in the course:

  • Python
  • Docker
  • webExtensions

Of the person who wanna learn more from the course:

  • Experience in developing any website
  • Experience in any front-end framework



  • Ubuntu 環境(14、16 皆可)
  • 安裝好 Docker 跟 Firefox ESR 52

Browser Front-end Exploitation

Date: 2018/7/25


NTD$ 17,0006小時中文

網頁瀏覽器是現代人上網常使用的軟體,不僅是在桌機上,手機、遊戲主機、tvOS 等各式平台也都是不可或缺的一部分,說它是這世紀最重要的軟體其中之一也不為過。但也正因如此,假使網頁瀏覽器出現問題往往就會影響到為數眾多的人,也可能造成嚴重的災難。本課程主要著重在簡介及探討各大瀏覽器(Chrome,Firefox,IE,Edge 等)在安全特性及功能性實作上的相同及相異處,並藉由這些相同及相異處帶出不同瀏覽器所延伸出的有趣利用及攻擊方式,並且也會針對近期各式惡意擴充套件做分析及研究,讓學員對於這類攻擊型態有更深入的認識。這門課對已經有網頁安全實戰經驗的學員們帶來更多實戰上有趣的玩法,而對於甫接觸資安或是網頁安全的學員,也將帶您從瀏覽器的角度看一些資安問題進一步接觸到網頁安全。課程中每個主題之間會穿插實戰或問答題以加深學員對某類主題的認識,同時希望能夠藉由題目釐清學員疑問,並期盼最後課程結束學員能至少理解其中幾項主題,並帶著滿滿的收穫回家。


  • Introduction to Web Browser Security
  • Understanding and bypassing Same Origin Policy
  • Attacking Users
  • Attacking Browsers
  • Attacking Extensions
  • Attacking Web Applications


  • 有基礎 C 及 C++ 程式語言能力
  • HTML,JavaScript,CSS 中等程度
  • 理論上知道網頁安全是什麼,有實戰經驗更好
  • 用過一些瀏覽器的進階功能,例如開發者工具及擴充功能



  • Ubuntu 環境(14、16 皆可)
  • 安裝好 Firefox 跟 Chrome

Web 安全入門 - 常見入侵手法的理論與實務

Date: 2018/7/25 - 26 (2-Day)


NTD$ 22,00012小時中文

本課程介紹常見的 Web 漏洞成因及利用方式,以 PHP + MySQL 為例,深入淺出地講解,輔以大量練習,讓學員快速入門 Web 安全。

課程安排讓學員在理解漏洞原理後,立刻實際動手利用漏洞進行入侵,並在過程中穿插講者在 CTF, bug hunting 的經驗分享,藉此讓學員從理解原理 → 動手實作 → 真實案例的理解一氣呵成。本課程設計了40+道循序漸進的 CTF Web 題供學員理解、熟練漏洞的利用,並提供真實 CTF 的題目讓學員(於課餘、課後)實戰。

本課程適合想入門 Web 安全的人,也適合想了解敵人的稽核人員、網管等資安從業人員,但不適合只喜歡"聽"課的人,因為本課程有超過一半的時間需要動手實作來增強肌肉記憶。


Topics (每個主題都有大量練習)

- Web技術原理 (以LAMP為例)

- 網頁前端安全問題 (XSS, CSRF等)

- SQL Injection及各種利用姿勢

- Command Injection常見場景及繞過方式

- File Inclusion/Disclosure

- File Upload

- 常見web server配置問題與利用方式




- web shell植入

- 如何減少入侵痕跡

- 商用軟體漏洞解說

學員先修技能:寫過任何語言、任何平台的 web 程式即可



  • 筆記型電腦,至少 4 GB RAM,10 GB 以上的硬碟空間
  • 一個熱血、想學習、不怕動手實作的心

VII : Windows Security

from Zero to Windows Shellcode Expert

Date: 2018/7/23 - 24 (2-Day)


NTD$ 44,00012小時中文

在駭客攻擊技巧日新月異下,開發惡意程式後門或者單純調用現成的商業攻擊套件(如 Metasploit)已無法滿足駭客需要繞過安全、防毒產品的需求了。在攻擊技術的推進之下,駭客將攻擊技巧以逐漸由現成工具、後門開發,轉為漏洞方式進行攻擊以求突破防毒缺口。

漏洞利用過程可分為:漏洞挖掘、漏洞利用、繞過防護措施、與執行起惡意程式碼(aka Shellcode)四個環節缺一不可。其中前三個環節雖然極為困難,但惡意程式碼才是真正漏洞能夠拿下受害主機的核心價值。

本課程專注於駭客是如何撰寫 Windows 惡意程式碼:如何讓一支精短的組合語言程式碼在任何情況下被執行起來都能完美的運作。議程內容將提及:程式處理序(Process)如何被作業系統裝載、執行緒的運作、作業系統運作概觀、處理序環境資訊剖析(PEB)、執行緒環境資訊剖析(TIB)、函數庫動態裝載過程與分析 PE 結構體外導函數表(Export Address Table)

並在課程尾聲指導學員如何以 C/C++ 快速開發惡意程式碼(Shellcode)技巧而不必使用組合語言指令做開發。


1.) PE 程序被裝載為 Process 的過程

2.) ntdll.dll 內部初始化實作

3.) 函數在執行程序中如何被呼叫

 - 編譯器、組譯器、連結器運作原理

 - Process 裝載與引入函數表裝載

 - C++ 下以 GetProcess(LoadLibrary(lib), func) 方式呼叫函數

4.) 執行緒環境資訊(TIB)分析

5.) 處理序環境資訊(PEB)分析

6.) 以 MinGW 編寫一個沒有 CRT(C++ Runtime)可運作的程式

7.) 剖析可執行程式(上一列點)組合語言指令

8.) 如何以 C++ 快速生產客製化 Windows Shellcode



  • 對於 C/C++ 在 Windows 上開發具初步認識與使用
  • 並對於系統 API 函數調用有初步理解與認識
  • 能夠以 MinGW 編譯器於 Windows 上寫出 Hello World 即可



  • Windows 7 x86 環境(x64 亦可、x86 尤佳)
  • IDA Pro
  • 動態調試工具(OllyDBG、Immunity Debugger、x64DBG 三者其一即可)
  • 安裝 MinGW 32 位元編譯環境