https://developers.cloudflare.com/r2/platform/pricing/
up to 10,000,000 read operations + $0.36 per 1,000,000 operations
$3.60 free
up to 1,000,000 write operations + $4.50 per 1,000,000 operations
https://developers.cloudflare.com/r2/platform/pricing/
up to 10,000,000 read operations + $0.36 per 1,000,000 operations
$3.60 free
up to 1,000,000 write operations + $4.50 per 1,000,000 operations
hoge.example.com
でユーザが作成したサイトをホスティングして、任意のJavaScriptを実行できる状態にしたいケース。
サブドメインを分けることで、Fetch APIなどはSame Origin Policyを基本にするため、別のサブドメインや example.com
に対するリクエストなどはできなくなる。
一方で、CookieはSame Origin Policyではない。
デフォルトでは、hoge.example.com
から example.com
に対するCookieが設定できる。
これを利用したDoS(Cookie Bomb)やこの挙動を組み合わせた別の脆弱性に利用できる場合がある。
The ESM standard is considered stable in NodeJS and well supported by a lot of modern JavaScript tools.
ESLint does a good job validating and fixing ESM code (as long as you don't use top-level await, coming in ESLint v8). Make sure to enable the latest ECMA features in the ESLint config.
{
const isSite = (domain) => { | |
console.log(domain) | |
const key = "WILL_BE_FIRED." + 'xxxx-xxxx-xxx-xxxx'.replace(/[x]/g, (c) => { | |
const r = Math.floor(Math.random() * 16); | |
return r.toString(16); | |
}); | |
document.cookie = `${key}=1; domain=${domain}; samesite`; | |
// Test wrinting | |
console.log("document.cookie", document.cookie) | |
const canWrite = document.cookie.includes(`${key}=1`); |
📝 早く読むために、翻訳の精度よりも早いレスポンスやインライン翻訳を優先している。
Use https://github.com/jfarley248/iTunes_Backup_Reader
git clone https://github.com/jfarley248/iTunes_Backup_Reader
cd iTunes_Backup_Reader
# apply https://github.com/jfarley248/iTunes_Backup_Reader/pull/12
gh pr checkout https://github.com/jfarley248/iTunes_Backup_Reader/pull/12
User Agent client hintsのJavaScript APIとHTTP Headerについてのメモ
Tested: Chrome Canary 86.0.4231.0
Feature-Policy
HTTP HeaderGit 2.26.0以下*1には、細工したリポジトリをgit clone
したときに、
そのユーザーのCredential(たとえばGitHub.comをcloneするときに使う認証情報)を奪い取れる脆弱性があります。
📝 取得できる認証情報は credential.helper
の設定に依存する
既にPoC(検証するためのコード)もあり、結構簡単なので是非Gitを2.26.1以上にアップデートしましょう。 git submoduleを使うと見た目ではわかりにくい攻撃もできるので、「気をつける」では回避は難しいです。
# https://github.com/secretlint/secretlint | |
name: secretlint | |
on: | |
push: | |
branches: ['main'] | |
pull_request: | |
branches: ['**'] | |
jobs: |