## 振り返りノート(2/10 - 3/21)
## [#あかこうの思考ノート](https://twitter.com/search?src=typd&q=%23%E3%81%82%E3%81%8B%E3%81%93%E3%81%86%E3%81%AE%E6%80%9D%E8%80%83%E3%83%8E%E3%83%BC%E3%83%88)
---
## [#あかこうの思考ノート](https://twitter.com/search?src=typd&q=%23%E3%81%82%E3%81%8B%E3%81%93%E3%81%86%E3%81%AE%E6%80%9D%E8%80%83%E3%83%8E%E3%83%BC%E3%83%88)とは
----
### コンピュータ・セキュリティを
### 消すために何をすればいいか
という目標のために私が考えた**思考**を
あつめたツイート群のこと
----
### 今回でわかったことがあるので
### 紹介させてください
---
## 何を考えたのか
----
以下の内容をぐるぐるしてました
----
### なぜ攻撃がおこるのか
### ↑↓
### どうしたら攻撃をとめられるのか
---
## 攻撃の原則
----
### 攻撃を起こすためには
### 条件がある。
----
大切なのは以下のバランス
---
* #### 攻撃の難易度
* #### 攻撃のメリット
* #### 攻撃するリスク
----
現状
### メリット $\times$ 簡単さ $>>$ リスク
---
理想
### メリット $\times$ 簡単さ $<<$ リスク
----
逆算して以下のようにすることで
**攻撃がなくせる**。
---
* ### リスクと大きくする
* ### 難易度を高くする
* ### メリットを小さくする
---
攻撃が起きる要因
---
### 小さすぎるリスク
----
リスクとはなにか(一般論)
----
### リスク$=$発生確率$×$損害の大きさ
----
リスクとはなにか(攻撃者目線)
---
### リスク$=$捕まる確率$×$刑の重さ
----
つまり原因はこれにある
---
* ### **捕まる確率**
* ### ~~刑の重さ~~
----
### つまりハッカーは捕まりづらい
----
なぜ捕まりづらいか
---
* #### インターネットの匿名性の高さ
* #### サーバがクライアントを識別しきれていない
----
どうしたら解決できるか
---
例:クライアント証明書を必須とする
HTTP通信の世界
* 証明書は郵送で配布される(物理認識性)
* プロキシを違反と定める
* 違反・攻撃と定めたクライアント
証明書を失効する
---
攻撃が起きる要因
---
### 低すぎる難易度
----
脆弱性を攻撃すると聞いたとき、
何を思いますか
----
* Baffer OverFlow
* User After Free
* Cross Site Scripting
* SQL Injection
----
これらに共通することは何か
---
### 人間がしやすい過ちであること
----
**人間がしやすい過ちのパターンは決まっていて**
#### それらが攻撃される脆弱性である
----
ターゲットに当てはまるのを、
攻撃者はよくあるパターンから探しているだけ
---
* #### 攻撃は現実的な難易度
* #### 攻撃は仕事できる難易度
----
どうしたら解決できるか
---
#### よくある過ちを防ぐ仕組みを作る
* BoFを止めるコンパイラ機構
* 安全なWEBフレームワーク
---
## その他
---
その他にわかったこと
---
## 使ってもらうのが
## 一番難しい
----
セキュリティを解決するものを
使ってもらうのは難しい
---
* #### 速度の問題
* #### 互換性の問題
* #### 利便性の問題
----
### でも使ってもらえないと、
### セキュリティは消せない
----
大切なのは
---
## ストーリー
----
#### 普及するまでのストーリーを考えて
#### 実践することが大事
(少なくともこれなしには普及しない)
---
その他にわかったこと
---
人間は信用できない
#### 技術による改革が必要
----
人間は信用できない。
**教育は必須**だが
根本解決にはつながらない。
----
**どんな人間でも**セキュアであれるような
技術や仕組みが大切
---
その他にわかったこと
---
なぜ攻撃がおこるのかなど
#### 様々な角度から攻撃をとめる
#### 方法を考える必要がある
----
わかったことに縛られず
### これからも思考していきます
---
## まとめ
----
攻撃の原則を逆算すれば、
攻撃をとめる方法がわかる
---
* #### リスクを大きくする
* #### 難易度を高くする
* #### メリットを小さくする
----
その他
---
* 普及するまでのストーリーを考えて、
実践することが大事
* どんな人間でもセキュアであれるような
技術や仕組みが大切
* 様々な角度から攻撃をとめる方法を
考える必要がある
---
## [#あかこうの思考ノート](https://twitter.com/search?src=typd&q=%23%E3%81%82%E3%81%8B%E3%81%93%E3%81%86%E3%81%AE%E6%80%9D%E8%80%83%E3%83%8E%E3%83%BC%E3%83%88)
{"metaMigratedAt":"2023-06-14T20:43:01.983Z","metaMigratedFrom":"Content","title":"Untitled","breaks":"true","contributors":"[{\"id\":\"792818e0-7890-49b7-a0a6-cc372e7a7559\",\"add\":3022,\"del\":495}]"}