Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
カーネルレベルでTwitterを禁止しよう
Search
Yuto Takamune
July 10, 2023
Programming
0
240
カーネルレベルでTwitterを禁止しよう
Yuto Takamune
July 10, 2023
Tweet
Share
More Decks by Yuto Takamune
See All by Yuto Takamune
GPT-3.5 Turbo をファインチューニングして自分のクローンを作った話
shinbunbun_
0
310
RustのLINEBot SDKを自作した話
shinbunbun_
0
1.8k
セキュリティキャンプ2023 Y3分散合意ゼミ 最終発表
shinbunbun_
0
3.9k
NixOSでもご自宅k8sがしたい!
shinbunbun_
2
3.8k
CRDTで始めるコンフリクトしないデータ同期
shinbunbun_
0
500
Haskell初心者がHaskellの楽しさについて語る
shinbunbun_
0
190
Rustで楕円曲線暗号の署名アルゴリズムをフルスクラッチ実装してみた話
shinbunbun_
0
1.7k
IEEE802.1X認証を導入してみた
shinbunbun_
0
270
UBICの食材管理APIを作った話
shinbunbun_
0
220
Other Decks in Programming
See All in Programming
リッチエディターを安全に開発・運用するために
unachang113
1
380
iOS開発スターターキットの作り方
akidon0000
0
240
プロダクトという一杯を作る - プロダクトチームが味の責任を持つまでの煮込み奮闘記
hiliteeternal
0
450
管你要 trace 什麼、bpftrace 用下去就對了 — COSCUP 2025
shunghsiyu
0
380
QA x AIエコシステム段階構築作戦
osu
0
260
11年かかって やっとVibe Codingに 時代が追いつきましたね
yimajo
1
260
それ CLI フレームワークがなくてもできるよ / Building CLI Tools Without Frameworks
orgachem
PRO
17
3.8k
なぜ今、Terraformの本を書いたのか? - 著者陣に聞く!『Terraformではじめる実践IaC』登壇資料
fufuhu
4
570
Understanding Kotlin Multiplatform
l2hyunwoo
0
250
実践 Dev Containers × Claude Code
touyu
1
170
ゲームの物理
fadis
3
970
新しいモバイルアプリ勉強会(仮)について
uetyo
1
250
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
Documentation Writing (for coders)
carmenintech
73
5k
Faster Mobile Websites
deanohume
308
31k
Measuring & Analyzing Core Web Vitals
bluesmoon
8
550
How GitHub (no longer) Works
holman
314
140k
Become a Pro
speakerdeck
PRO
29
5.5k
Site-Speed That Sticks
csswizardry
10
770
Transcript
カーネルレベルでTwitterを禁 止しよう 会津大学 学部3年 しんぶんぶん
自己紹介 • 名前: しんぶんぶん • 所属: 会津大学学部 3 年 •
Twitter: @shinbunbun_, @4fa19623 • Rust いっぱいちゅき • LINE API Expert / seccamp ’23 / Cybozu labyouth 13th
みなさん、Twitterやりすぎてませんか?
Twitterを禁止する方法 • Chrome拡張 • ファイアウォールでブロック • etc…
実はそれ、カーネルレベルでブロックできます
そう、eBPFならね!
eBPFとは • カーネルのソースコードを変更したり、カーネルモジュールをロードしたりすることな く、安全にカーネルの機能を拡張できる • ユーザースペースはGo,C++, Rustなどでかける • eBPFプログラム自体はCやRustでかける
つまり...
全部Rustでかける!!!
今回作ったもの • ayaというRustのライブラリを使用 • 公式チュートリアルにXDPを使ってパケットのdropをするコードが載っているのでそ れを使用 • コード: https://github.com/aya-rs/book/tree/main/examples/xdp-drop
実際に動かしてみよう!
まとめ • やっぱり低レイヤーやりたかったらRustめちゃめちゃ良いなと思った • eBPFまだ入門しただけなので、もっと深いところまで触っていきたい