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
230
カーネルレベルでTwitterを禁止しよう
Yuto Takamune
July 10, 2023
Tweet
Share
More Decks by Yuto Takamune
See All by Yuto Takamune
GPT-3.5 Turbo をファインチューニングして自分のクローンを作った話
shinbunbun_
0
300
RustのLINEBot SDKを自作した話
shinbunbun_
0
1.7k
セキュリティキャンプ2023 Y3分散合意ゼミ 最終発表
shinbunbun_
0
3.7k
NixOSでもご自宅k8sがしたい!
shinbunbun_
2
3.7k
CRDTで始めるコンフリクトしないデータ同期
shinbunbun_
0
480
Haskell初心者がHaskellの楽しさについて語る
shinbunbun_
0
190
Rustで楕円曲線暗号の署名アルゴリズムをフルスクラッチ実装してみた話
shinbunbun_
0
1.6k
IEEE802.1X認証を導入してみた
shinbunbun_
0
260
UBICの食材管理APIを作った話
shinbunbun_
0
210
Other Decks in Programming
See All in Programming
データの民主化を支える、透明性のあるデータ利活用への挑戦 2025-06-25 Database Engineering Meetup#7
y_ken
0
300
AWS CDKの推しポイント 〜CloudFormationと比較してみた〜
akihisaikeda
3
310
Deep Dive into ~/.claude/projects
hiragram
6
740
datadog dash 2025 LLM observability for reliability and stability
ivry_presentationmaterials
0
110
Haskell でアルゴリズムを抽象化する / 関数型言語で競技プログラミング
naoya
17
4.9k
今ならAmazon ECSのサービス間通信をどう選ぶか / Selection of ECS Interservice Communication 2025
tkikuc
16
3k
PostgreSQLのRow Level SecurityをPHPのORMで扱う Eloquent vs Doctrine #phpcon #track2
77web
2
270
20250628_非エンジニアがバイブコーディングしてみた
ponponmikankan
0
310
GraphRAGの仕組みまるわかり
tosuri13
7
480
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
1
110
「ElixirでIoT!!」のこれまでとこれから
takasehideki
0
370
A2A プロトコルを試してみる
azukiazusa1
2
1k
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
430
65k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
700
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Building Applications with DynamoDB
mza
95
6.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
490
Agile that works and the tools we love
rasmusluckow
329
21k
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まだ入門しただけなので、もっと深いところまで触っていきたい