RyotaK
RyotaK
## Summary This is similar issue to #959, but different cause. Due to `sandbox` attribute is allowed, attacker can redirect victim to something malicious if attacker embeds iframe with `allow-top-navigation`...
CSPを導入する
## Summary 最低でも`script-src`と`base-uri`を全ページで指定し、XSSが存在した場合の軽減策として機能するようにしたい。 ## Description CSPを適切に設定することでXSSが存在した場合にある程度影響を軽減できる。`style-src`や`img-src`等は想定していない箇所が壊れる可能性があるので、一旦`script-src`と`base-uri`を指定し、最低限無いよりマシな状況にしたい。 CSPについてはこちらを参照: https://developer.mozilla.org/ja/docs/Web/HTTP/CSP (良さそうであれば実装してみるので教えてください。) ### script-srcに関して 以下の理由により、JavaScriptを全部外部のファイルに分けて`script-src 'self'`のみを使う形にするのが一番良さそう #### nonceを用いたCSP nonce形式を用いる場合、リクエストごとにランダムなnonceを生成してクライアントに返す必要がある。 また、そのnonceをそれぞれの`script`タグに付与する必要が出てくるが、`@fastify/view`/`pug`には動的にnonceを付与する機能が無いため、pugでテンプレートを描画した後に一度サーバー側でDOMをパースしてそれぞれのscriptタグにnonceを付与する必要が出てくると思われる。 (他にいい実装方法を思いつく方は教えてください。) #### ハッシュを用いたCSP scriptタグ内のコンテンツのハッシュを計算し、それを予め`Content-Security-Policy`ヘッダで指定する必要がある。 この方法だとビルド時 or 起動時に一度だけ計算すればそれ以降は`Content-Security-Policy`ヘッダに付与しておけば良くなる。 ただし、どこか(多分pug)でJavaScriptの内容がminifyされているため、minify後のコンテンツをどうにかして取ってハッシュを計算する必要がある。 #### script-src 'self' `script-src 'self'`を用いる場合、ページ内に埋め込まれたスクリプト...
## Summary https://misskey-hub.net/docs/api/ で説明されている認証フロー内において使用されるセッションIDに対して、適切な制約が存在しないため任意の文字列をセッションIDとして指定できてしまいます。 これにより、脆弱なセッションIDを生成して認証するアプリケーションが存在した場合、アクセストークンの漏洩へと繋がる可能性が存在します。 ## 修正案 1. セッションIDにUUID以外を指定できなくする - 現状UUID以外を許容しているため潜在的に破壊的変更である可能性が存在します。 2. セッションIDの長さに対して制約をかけ、短すぎるセッションIDを許容しないようにする
# What - `signup`エンドポイントにおいて、メールアドレスの検証が走る場合にユーザー名の重複確認が行われていなかった問題を修正 # Why - 既に登録が完了しているユーザー名で登録メールを送れてしまい、ユーザーの混乱を招くため # Additional info (optional) - partially fixes #10076 - 既に登録プロセスが完了している場合に登録が出来ないようになりますが、同時に同じユーザー名で登録プロセスを開始した場合、上記Issueで説明されている問題が依然として発生します。 - Pendingになっているユーザーのリポジトリにおいても重複確認を行うべきか検討しましたが、メールアドレスを間違えた場合などに再度登録したいというケースがあることを想定して一旦はそのままにしています。 - そのため、メールアドレス認証ページにおいて別途エラーハンドリングを行い、適切なメッセージを表示するべきかもしれません - メール登録を必須にしているインスタンスにおいて、以下の状況において動作確認済み 1. ユーザー名が重複している場合、400が帰ることを確認 2. ユーザー名が重複していない場合、204が帰りメールが飛んでくることを確認
# What - アカウント作成時のフォームにおいてユーザー名の重複やメールアドレスの重複などが発生している場合にフォームの送信ボタンを無効にするように - パスワードの一致状況が `match` である場合にのみフォームを送信できるように # Why - 警告が出ているにも関わらず送信ボタンが押下出来る状態となっていることで、ユーザーの混乱を招くため - パスワードを入力していない状態の場合、パスワードの一致状況が`null`となってしまい、`passwordRetypeState === 'not-match'`がfalseになってしまっていたため。 # Additional info (optional) - partially fixes #10076 - メール登録を必須にしているインスタンスにおいて、以下の状況で動作確認済み 1. メールアドレスが既に使用されている場合、送信ボタンが無効になること 2. ユーザー名が重複している場合、送信ボタンが無効になること...
I sent an email to [[email protected]](mailto:[email protected]) following the [SECURITY.md](https://github.com/WayneD/rsync/blob/6f3c5eccee6cf4dead68b9f3fda8fc2ff90dc311/SECURITY.md) on the 2nd of April, but I haven't received any responses yet. So, I'd like to know if you received the...
I've sent an email that contains the detail of the vulnerability to `zimbatm at zimbatm.com`. (As I couldn't find proper contact information to report a vulnerability, I used the email...
https://github.com/sksat/papermc-docker/pull/269 に伴い、アップデート後のコンテンツを探したいため
# What - CSPを導入するためにインラインスクリプトを使用していた箇所を全て別のファイルに切り分ける - インラインイベントハンドラを全て置き換える - `Content-Security-Policy`ヘッダを送るようにする - 設定でCSPヘッダで送る内容を指定できるようにする # Why - XSSが存在した場合に、ある程度影響を軽減できるようにしたい # TODO 済 - Captcha関連のJavaScriptを使えるように - できたはず - 他にdocument.createElementでscriptタグを生成している箇所がないか洗い出し - MkTagCloud: `/client-assets/tagcanvas.min.js`を読み込んでいるだけなので問題無さそうに見える - [これ](https://github.com/misskey-dev/misskey/blob/7b29e36d64bf58b6583b07968606f006afd66344/packages/frontend/src/components/MkTagCloud.vue#L57) - 他にインラインイベントハンドラを使っている箇所がないか確認...
## Summary Because there are no attribute filters in the `abbr` and`sup` tags, an attacker can trigger XSS on websites which is using editor.md. ## CVE [CVE-2019-14653](http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-14653) ## Payloads This...