Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
高校のChromebookでも自由なネット環境を!
Search
らすぴー
May 16, 2026
260
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
高校のChromebookでも自由なネット環境を!
らすぴー
May 16, 2026
More Decks by らすぴー
See All by らすぴー
typoなんかねぇよ
raspython3
0
770
電子辞書Brainをネットに繋げてみた(自力編)
raspython3
0
800
限界環境CPython rev. seccamp2025
raspython3
0
81
kernel-vm-ittekita-yuukousai
raspython3
0
130
kernelvm-brain-net
raspython3
0
1.2k
pyconjp2024-wince
raspython3
0
90
seccamp2024-edictionary-python-TLS
raspython3
0
69
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
The untapped power of vector embeddings
frankvandijk
2
1.9k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
340
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
580
The #1 spot is gone: here's how to win anyway
tamaranovitovic
4
1.2k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
310
Producing Creativity
orderedlist
PRO
348
41k
Google's AI Overviews - The New Search
badams
0
1.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Transcript
Chromebook らすぴー / RasPython3 (@RasPython3) 1
• 本スライドの内容は、発表者の高校時代(3~5年前)の話になります。 • 本スライドの内容は、現在は修正され使用できなくなっています。 • いわゆる脆弱性を突く、といったものではありません。 (この辺り@puhitakuさんに相談に乗っていただきました。感謝!) 2
活動名 RasPython3 / らすぴー X: @raspython3 seccamp’24 全国 seccamp’25 チューター
普段やってること 各種ウェブツールづくり 電子辞書いじり ゲーム内コーディング ネットワーク関連 etc. 3 SHARP Brain SH-PW7-W 自分が持ってる機体の色違い
• 昨今のICT教育推進の流れ • 高校入学時に学校の指示でChromebookを購入 • Google Play: 使用不可 • 拡張機能:
使用不可 • Linux: 使用不可 • フィルタリング拡張機能が強制インストール済み • DiscordやQiita等多数のサイトが閲覧不可 • 「不便すぎる!!!」 4 NEC Chromebook Y2
5 実際の規制画面
今回は「フィルタリングの無効化」を目標にする 1. 拡張機能の削除 2. 拡張機能を介さないルートの開拓 3. 拡張機能の検出回避 6
1: 拡張機能はポリシーによりインストールされている →もちろん普通のやり方では削除できない なので、「ポリシーの解除」と「ごり押し抹消」のどちらか これを行うには、Chrome(Chromium)の穴を探すことになる →難易度がかなり高い 7
2: • 拡張機能が介入できるルート 1. ブラウザのアドレスバーにURLを入れてアクセス 2. リンクをクリックしての遷移 3. JavaScriptでwindow.open()やnavigation.navigate() (2とほぼ同じ)
• 介入できないルート 1. 外部サーバでレンダリング 2. 自前でEthernet等を喋って通信・レンダリング・JavaScript処理 →ちょっと大変 (開拓はしていたが今回はスルー) 8
3: そもそも... 拡張機能はどうやってフィルタリングをしているのか? • WebRequestBlocking API • Manifest v2(とv3では一部拡張機能、今回の拡張機能も該当)まで使えたAPI •
HTTPリクエストを動的にブロックできる • DeclarativeNetRequest API • Manifest v3で使えるAPI • HTTPリクエストを静的にリダイレクトやブロックなどができる 9
3: この拡張機能は、前述の2つのAPIを使ってフィルタリングを実現してい るっぽい →ページ自体のloadイベント等を監視しているわけではないので イベントリスナーの削除などでの無効化は難しい 抜け穴があるとすれば、「想定外」を突くしかない ページ遷移のやり方も直リンや戻る/進む、history APIなど複数ある (ソフトナビゲーションとかもね) →できるだけ特殊なページ/手順を探そう!
10
URIスキームって知ってますか? 大雑把に言うと「どんな種類/手段のURIか」を示すもので、 URIの「:」とその手前の部分を指す http:, https:, mailto:, ssh:, ftp: などなど... 11
URI 拡張機能は基本的には http: または https: のみ動作可(のはず) →file: などから見たいページに飛べば回避できるのでは? 結果: 失敗
ちゃんとブロックされました • もっと特殊なスキームを! • Chromeブラウザで使われるスキーム • http:, https:, file:, chrome:(about:), chrome-untrusted: 12 ん?
chrome-untrusted • chrome://よりも権限が弱い、ブラウザ内蔵だが信用が低いページ 用のスキーム • 権限以外は chrome: とほぼ同じ挙動をしている(っぽい) • Chromebook以外では(自分は)見たことがない
...これってかなりレアスキームでは? 13
• 今回のやり方で都合がいいターミナルのページ (chrome-untrusted://terminal/html/terminal.html)を開く • 開発者ツールを立ち上げ、コンソールに「location.href=...」で 見たいページのURLを入力 • Enter! 14
ktkr 見れちゃった~~~~~ 15 けしからん じゃないか!!
• 制限の多い環境だと何かと力がつくのでおススメ • 例えば電子辞書 (この環境下で電子辞書にPython移植したりしていた) • 良い子のみんなは真似しちゃだめだぞ! 16