๋ณธ ํ๋ก์ ํธ๋ ์์ฌ๊ณผ์ ์งํ ์ค, ํ์๋ ผ๋ฌธ์ ์ํด ์งํ๋ ํ๋ก์ ํธ์ ๋๋ค.
- ์ฐธ์ฌ์ธ์ : 2์ธ ์ฐธ์ฌ(1 ์ ์)
- ๊ฐ์ : ์ด๋๋ฆฌ์ ์ฑ๊ตด์๋ค์ 85% ์ด์์ Geth ๋ผ๋ ํด๋ผ์ด์ธํธ ํ๋ก๊ทธ๋จ์ ํตํด ์ด๋๋ฅผ ์ฑ๊ตดํฉ๋๋ค. ๋ณธ ํ๋ก์ ํธ๋ ์ด Geth ๋ฅผ๋ง๋น์์ผ ์ฑ๊ตด์ ํ ์ ์๋๋ก ๊ณต๊ฒฉํ๋ ํ๋ก์ ํธ์ ๋๋ค.
- ์์ธ๊ฐ์ : ์ฑ๊ตด์ ์ํด์๋ P2P ์์์ ๋ค๋ฅธ ๋ ธ๋๋ค๊ณผ ์ฐ๊ฒฐ๋์ด์ผ์ง๋ง ์ฑ๊ตด์ด ๊ฐ๋ฅํฉ๋๋ค. ์ด์ ๋ ๋ค๋ฅธ ๋ ธ๋๋ค๋ก๋ถํฐ ์ต์ ์ ๋ธ๋ก ํด์๋ฅผ ๋ฐ์์ค๊ณ ์ด๋ฅผ ํตํด ๋ค์ ๋ธ๋ก์ ์ฑ๊ตดํ๊ธฐ ๋๋ฌธ์ด์ฃ . ๋ฐ๋ผ์ ์ผ๋ง๋ ๋ ธ๋๋ค๊ณผ ์ ์ฐ๊ฒฐ๋์ด์๋์ง๊ฐ ์ค์ํฉ๋๋ค. ํ์ง๋ง ๋ ธ๋๋ค๊ณผ ์ฐ๊ฒฐ๋ ์ ์๋ค๋ฉด ์ด๋จ๊น์? ์ฑ๊ตด์ ํ ์ ์๊ฒ ๋๊ฒ ์ฃ . ๋ณธ ํ๋ก์ ํธ๋ ํ๋์ ๋ ธ๋๋ฅผ ๋ง๋น์์ผ ๋ค๋ฅธ ๋ ธ๋๋ค๊ณผ ์ฐ๊ฒฐ๋ ์ ์๋๋ก DDoS ๊ณต๊ฒฉ์ ์ํํฉ๋๋ค. ๊ฒฐ๊ณผ๋ก ์ฑ๊ตด์ด ๋ถ๊ฐ๋ฅํด์ง๋๋ค.
- ๊ธฐ๊ฐ : 2020๋ 09์ ~ 2022๋ 08์(23๊ฐ์)
- ๋์ ์ญํ
- ๐ ์ด๋๋ฆฌ์ ํด๋ผ์ด์ธํธ ์ฝ๋๋ ๋ฒจ ๋ถ์
- ๐ ์ด๋๋ฆฌ์ ์ดํด๋ฆฝ์ค ๊ณต๊ฒฉ ๋ ผ๋ฌธ ์ ๋ฆฌ
- ๐ ์ด๋๋ฆฌ์ ๊ตฌํ ์ทจ์ฝ์ ๋ถ์
- โ๏ธ ์๋ก์ด ์ดํด๋ฆฝ์ค ๊ณต๊ฒฉ
- ๐ ์ดํด๋ฆฝ์ค ๊ณต๊ฒฉ ์คํ์ฆ๋ช
- Github : ๋น๊ณต๊ฐ
- ๋ ผ๋ฌธ : https://scienceon.kisti.re.kr/srch/selectPORSrchArticleOrgnl.do?cn=DIKO0016457502
- ๋ ผ๋ฌธ์๊ฐ(English) : https://sites.google.com/view/master-thesis-hwangbogyumin/
Pseudo-code of Ethereum P2P connection process and vulnerabilities (Geth v1.9.x)
๊ฑฐ๋์ ๋ฏธํ๊ณ ๊ฒฐ๋ก ๋ถํฐ ๋ง์๋๋ฆฌ๋ฉด, ์ด๋๋ฆฌ์ ํด๋ผ์ด์ธํธ๋ FindNode RPC ํจํท์ ํตํด ๋ค๋ฅธ ๋
ธ๋๋ค๊ณผ ์ฐ๊ฒฐ๋ฉ๋๋ค. ํ์ง๋ง ํด๋น ํ๋ก์ธ์ค์๋ ์ทจ์ฝ์ ์ด ์กด์ฌํด์. ๋ฐ๋ก ์๋์ฝ๋์์ et
๋ก ํ๊ธฐํ ์ธ์
๋ง๋ฃ์๊ฐ์ ๋
ธ๋ฆฌ๋ ๋ฐฉ๋ฒ์
๋๋ค. ๋ณธ ๋
ผ๋ฌธ์ FindNode ํจํท์ด et
์๊ฐ์ ์ด๊ณผํ๋๋ก ๊ฐ์ ํ ์ ์์ต๋๋ค.
์๋ ์ฝ๋
โ๏ธ ์๋ก์ด ์ดํด๋ฆฝ์ค ๊ณต๊ฒฉ
๊ณต๊ฒฉ ์ํคํ ์ฒ
STEP-1
STEP-2
STEP-3
๐ ์ดํด๋ฆฝ์ค ๊ณต๊ฒฉ ์คํ์ฆ๋ช
๊ณต๊ฒฉ ํ, Kademlia DHT ๋ด ๋ ธ๋ ๊ฐ์ ๊ฐ์ ์คํ ์ฆ๋ช
๊ณต๊ฒฉ ํ, ๋ ธ๋ ์ฐ๊ฒฐ ์๋ ํ์ ๊ฐ์ ์คํ ์ฆ๋ช
๊ณต๊ฒฉ ํ, ์ฐ๊ฒฐ๋ ๋ ธ๋ ๊ฐ์ ๋ฐ ๋ธ๋ก ๋๊ธฐํ ์ง์ฐ ์คํ ์ฆ๋ช