成果物から始めるプログラミング学習
教材を読み終わったとき、手元に
あなた自身の公開できるWebサイトが完成しています。
Tsumiki は、練習用の課題を解く教材ではありません。1章ごとに、あなた自身のサイトが少しずつ育っていきます。
第0章をはじめる(約70分)コースを選ぶ
無料・登録不要。必要なのは VS Code とブラウザだけ。
続きから
これは教材の完成見本です。10章後、これの「あなた版」が公開URL付きで手元に残ります。 完成見本をさわってみる →ふつうの学習サイトと違うところ
自分のパソコンで作る
ブラウザの中の練習場ではなく、最初からあなたのパソコンにフォルダを作ります。終わったあとも、そのファイルは手元に残ります。
途中で世界に公開する
完走しないと何も得られない構造にはしません。コースの中ほどで、いちど本当に公開してURLを手に入れます。
60%は写経、40%は自分の言葉
いきなり自由課題は出しません。書き写す部分と、自分用に書き換える部分がはっきり分かれています。
道1 — はじめてのプログラミング
どちらから始めるか
はじめての自分サイトはじめての人はこちら
HTML と CSS だけで、公開できる自己紹介サイトを作りきる

- ボリューム
- 全10章 / 目安 約9時間
- できあがるもの
- 教材を読み終わったとき、手元にあなた自身の公開できるWebサイトが完成しています。必要なのは VS Code とブラウザだけ。ターミナルもGitも使いません。
- 前提
- 前提はありません。使うのは VS Code とブラウザだけ。ターミナルもGitも出てきません。
第0章をはじめる章の一覧を見る
JavaScript × TypeScript 同時学習コース1を終えた人向け
本物のAPIで動く旅ダッシュボードを作りながら、JSとTSを1章ずつ行き来する

- ボリューム
- 全11章 / 目安 約15時間
- できあがるもの
- 毎章「まずJSで書いて動かす → 同じファイルをTypeScriptにする」の順で進みます。JSがどう壊れるかを自分の画面で見てから型を入れるので、型が何から守ってくれているのかが手触りで分かります。作るのは天気と為替が本物のAPIで動く、公開URL付きのダッシュボードです。
- 前提
- HTMLとCSSを書いたことがある人向けです。ターミナルとNode.jsを使います。
第0章をはじめる章の一覧を見る
道2 — 言語の試食コーナー
ミニ体験コース — 言語の試食コーナー
どの言語が自分に合うか、15分の試食から始められます。インストールは要りません。
Python — 面倒ごとを自動化する
標準ライブラリだけで、毎日の面倒を片づける道具を作る
- 作るもの
- ダウンロードフォルダを片づけるスクリプトと、家計CSVの月次レポート
- 時間
- 試食 15分(インストール不要)
持ち帰り 約2.5時間 - 環境構築
- ★★★重さ 1 / 3コース1修了相当(VS Codeとファイル操作)
試食してみる章の一覧
Go — 配れる道具を一瞬で作る
単一の実行ファイルにまとまる、配れるCLIを作る
- 作るもの
- リンクの生死をまとめて調べるCLI(1個の実行ファイル)
- 時間
- 試食 15分(インストール不要)
持ち帰り 約2.5時間 - 環境構築
- ★★★重さ 1 / 3コース2の第0章相当(ターミナルの4コマンド)
試食してみる章の一覧
Git / GitHub — 作品に歴史と住所を与える
作ったものに履歴を付けて、世界に住所を与える
- 作るもの
- 公開GitHubプロフィールと、GitHub Pagesで公開した自分のサイト
- 時間
- 試食 15分(インストール不要)
持ち帰り 約2.5時間 - 環境構築
- ★★★重さ 1.5 / 3コース1修了相当
試食してみる章の一覧
Linux コマンド — 黒い画面を自分の道具にする
怖かった黒い画面を、毎日使える自分の道具に変える
- 作るもの
- 作品をワンコマンドで守る backup.sh と、自分で書いたコマンド帳
- 時間
- 試食 20分(インストール不要)
持ち帰り 約3時間 - 環境構築
- ★★★重さ 2 / 3コース1修了相当(ファイル操作の考え方)
試食してみる章の一覧
React Native — 自分のスマホで動くアプリ
自分のスマホで本当に動くアプリを、その日のうちに
- 作るもの
- 自分のスマホのExpo Goから開ける「旅先ルーレット」
- 時間
- 試食 20分(インストール不要)
持ち帰り 約2.5時間 - 環境構築
- ★★★重さ 2 / 3コース2修了相当(Node導入済み)+スマホ実機
試食してみる章の一覧
Ruby — 書き心地を味わう
書いていて気持ちいい、という価値をそのまま体験する
- 作るもの
- 1行日記のCLI(追記・一覧・ランダム振り返り)
- 時間
- 試食 15分(インストール不要)
持ち帰り 約2時間 - 環境構築
- ★★★重さ 1.5 / 3コース1修了相当
試食してみる章の一覧
Rust — コンパイラと二人三脚で書く
コンパイラを敵ではなく相棒として使う感覚をつかむ
- 作るもの
- 買い物メモCLIと、cargo build で作る実行ファイル
- 時間
- 試食 20分(インストール不要)
持ち帰り 約3時間 - 環境構築
- ★★★重さ 3 / 3コース2の第0章相当(ターミナルの4コマンド)
試食してみる章の一覧
C++ — コンピュータの素顔に触れる
多くの言語の祖語に触れ、コンパイルと速度を体感する
- 作るもの
- 友だちのPCでも動く、数当てゲームの実行ファイル
- 時間
- 試食 20分(インストール不要)
持ち帰り 約2.5時間 - 環境構築
- ★★★重さ 2.5 / 3コース2の第0章相当(ターミナルの4コマンド)
試食してみる章の一覧
道3 — セキュリティエンジニアへの道
作ったものが、どう壊れるか
「作る側」を終えた人が、Web・スマホ・低レイヤーの脆弱性診断へ進むための道です。8つのトラックを、法と倫理から順に上っていきます。
T0法と倫理
すべての実習の前提。何が合法で、どこまでが許された環境か。ここを通らずに先はない。
セキュリティの法と倫理ミニ
不正アクセス禁止法・著作権・責任ある開示。手を動かす前に、線を引く。
- 実習
- コード実行なし
- 環境の重さ
- ★★★重さ 0 / 3
- 前提
- 前提はありません
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
責任ある開示を書くミニ
見つけた穴を、正しく・穏当に伝える。IPA早期警戒パートナーシップの流れ。
- 実習
- コード実行なし
- 環境の重さ
- ★★★重さ 0 / 3
- 前提
- sec-law 修了
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
ツール導入とライセンスの読み方ミニ
Ghidra・gdb・Wireshark を公式導線で入れ、OSS と無償プロプラを見分ける。
- 実習
- コード実行なし
- 環境の重さ
- ★★★重さ 2 / 3
- 前提
- sec-law + mini-linux
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
CTF のルールと writeup の作法ミニ
競技規約を守り、他人の問題や writeup を転載しない書き方。
- 実習
- コード実行なし
- 環境の重さ
- ★★★重さ 0 / 3
- 前提
- sec-law 修了
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
自分だけの脆弱ターゲットを作るミニ
オリジナルのやられアプリを1本設計する。著作権とインターネット非公開の実践。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- sec-law + Web基礎(sec-web-basics 推奨)
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
T1診断の土台・入口
ゼロインストールの試食から、HTTP を手で話し、プロキシを立てるところまで。
Web はどう壊れるか — 15分の脆弱性試食ミニ
サンドボックス内で本物の DOM XSS を起こす。ゼロインストールの入口。
- 実習
- ブラウザ内で完結
- 環境の重さ
- ★★★重さ 0 / 3
- 前提
- course-1 推奨 / sec-law の同意
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
HTTP を手で話す — リクエストの解剖ミニ
curl と Repeater で、メソッド・ヘッダ・Cookie を手で組む。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- course-2 推奨
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
Burp Suite 最初の一歩ミニ
プロキシ・CA証明書・スコープ。最頻の環境の壁を単独で超える。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 2 / 3
- 前提
- sec-http 修了
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
T2低レイヤー・システム
C・アセンブリ・システムコール。壊れ方の最下層を、観察に徹して読む。
C言語 — ポインタとメモリ本コース
変数は番地のバイト列。pwn・rev・監査の最下層を読む。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- mini-cpp / mini-linux(gcc が使えること)
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
コンピュータのしくみ — アセンブリで読む CPU とスタック本コース
x86-64 を読む。レジスタ・呼出規約・スタックフレーム。rev の核。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- sec-c 推奨(gcc/objdump/gdb が使えること)
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
バイナリを覗くミニ
file・od・strings・readelfの頭。低レイヤーの最易な入口。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- mini-linux 修了
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
システムコールを覗くミニ
straceでOSの境界を観察する。write(2)だけのhello。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- mini-linux 修了
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
プロセスと仮想メモリミニ
ps・/proc・maps・シグナル。ASLRの入口。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- mini-linux / mini-syscall
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
パケットを手で見るミニ
nc・curl -v・自作キャプチャで、自分のloopbackを解剖する。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 2 / 3
- 前提
- mini-linux / course-2
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
T3Web 診断
攻めて、直して、再検証する。XSS・IDOR・インジェクションから業務ロジックまで。
Web セキュリティの土台(旗艦)本コース
反射XSS・IDOR・オープンリダイレクトを、攻めて・直して・再検証する。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 2 / 3
- 前提
- course-1/2 + T1(sec-http/sec-burp 推奨)
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
インジェクションを体で覚える本コース
XSS全種・SQLi・コマンド・SSTI・パストラバーサルと、直す側を対で。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 2 / 3
- 前提
- sec-web-basics 修了
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
アクセス制御と認可の壊れ方本コース
IDOR・BOLA・権限昇格。ツールが最も見つけにくい高価値領域。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 2 / 3
- 前提
- sec-web-basics 修了
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
サーバサイドの深い穴本コース
SSRF と安全でないデシリアライズ。サーバ自身が、攻撃の踏み台になる。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 2 / 3
- 前提
- sec-injection 修了
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
API と GraphQL の診断本コース
BOLA・BFLA・mass assignment・introspection。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 2 / 3
- 前提
- sec-authz 修了。npm install graphql が使えること
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
ビジネスロジックと競合状態本コース
ツールが原理的に見つけないシニア領域。TOCTOU と競合。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 2 / 3
- 前提
- Web診断を複数
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
同一オリジンポリシーと CORSミニ
SOP と CORS 誤設定を、2オリジン構成で体感する。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- sec-web-basics 修了
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
セキュリティヘッダーと CSPミニ
Tsumiki 自身の CSP をドッグフーディング教材にする。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- XSS を既習
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
T4認証・認可
セッション・Cookie・JWT・OAuth。誰が誰であるかの壊れ方。
認証とセッションの診断本コース
Cookie・セッション・CSRF・JWT・OAuth・OIDC。OAuth モック同梱。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 2 / 3
- 前提
- sec-web-basics / sec-authz
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
JWT を分解するミニ
デコード・検証・偽造・alg 混同・弱鍵。自作トークン限定。
- 実習
- ブラウザ内で完結
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- sec-http 修了
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
T5診断実務・キャリア
報告書・ソースコード監査・セキュアコーディング。売り物になる成果物を書く。
脆弱性診断の歩き方 — 報告書まで本コース
診断業務が実際に売る成果物=診断報告書を1本書く。キャリア最重要。
- 実習
- コード実行なし
- 環境の重さ
- ★★★重さ 0 / 3
- 前提
- Web診断を数本
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
ソースコード診断入門本コース
動かさずに読む。source→sink のテイント追跡で穴を見つける。
- 実習
- コード実行なし
- 環境の重さ
- ★★★重さ 0 / 3
- 前提
- course-2 + Web診断
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
作らせない側 — セキュアコーディング本コース
監査の物差し=あるべき実装。攻撃各コースの「直す側」を体系化する。
- 実習
- コード実行なし
- 環境の重さ
- ★★★重さ 0 / 3
- 前提
- Web診断を数本
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
依存関係の脆弱性 — SCA 入門ミニ
npm audit・lockfile・typosquatting。防御の観点で。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- course-2 修了。npm が使えること
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
T6モバイル・クラウド診断
自分の Thousand SKY と Firebase を、許可された環境として診断する。
スマホアプリ診断入門本コース
自作の練習用APKを、静的解析で読む。MASVSライト。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 2 / 3
- 前提
- sec-auth + sec-audit(コード読解の基礎)
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
Firebase の落とし穴ミニ
セキュリティルールという発想を、自作モックで理解する。実案件最頻の所見。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- sec-authz(認可の考え方)
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
T7CTF
安全に旗を立てる。secret-notes-ctf を入口に、6カテゴリと実戦ワークフローへ。
CTF 入門 — 安全に始めて旗を立てる本コース
安全ゲート・全員必修。secret-notes-ctf で初回を通しで攻略する。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 2 / 3
- 前提
- course-1 / mini-linux
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
Web の穴を見つけて旗を取るミニ
新規オリジナルの arena-web で、競技文脈の旗探し。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 2 / 3
- 前提
- ctf-intro 修了
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
弱い暗号を解いて旗を取るミニ
自作 challenge.py を、手元のPythonで解く。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- ctf-intro / mini-python
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
プログラムを読み解いて鍵を暴くミニ
自作クラックミー。ソースとレシピを配り、バイナリは配らない。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- ctf-intro / sec-asm 推奨
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
自作バイナリで教育目的にメモリを操るミニ
自作 vuln.c を、手元でビルドしてret2win。武器化はしない。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 2 / 3
- 前提
- ctf-intro / sec-c
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
残されたデータから真相を掘り出すミニ
自作生成物(carving・steg・pcap)のみを配布する。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- ctf-intro 修了
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
檻(jail)を破り符号を解くミニ
自作 pyjail とエンコード連鎖。手元のpython3で解く。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- ctf-intro / mini-python
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
実戦ワークフロー(triage→hints→writeup)ミニ
問題は出さない。既存3スキルをAlpacaHackへ橋渡しする。
- 実習
- コード実行なし
- 環境の重さ
- ★★★重さ 0 / 3
- 前提
- ctf-intro + カテゴリ1本
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧
自作して直す(防御的capstone)ミニ
攻めて分かった穴を塞ぐ。修正後にexploitが失敗することをverify。
- 実習
- localhost で実習
- 環境の重さ
- ★★★重さ 1 / 3
- 前提
- mini-ctf-web 修了
倫理ゲート必須自作・許可環境・CTF のみ
章の一覧