メンテナンス時間をどれくらい取れるかで戦略が決まる。 基本的にはメンテナンス時間を十分に取れたほうが良い。 またリスクをどれだけ許容できるかもビジネスによるので要確認しておくべき。
基本的には一度切り替えてしまうとロールバックすることは簡単ではない。 覚悟を決めて突き進む必要がある
hoge.example.com
でユーザが作成したサイトをホスティングして、任意のJavaScriptを実行できる状態にしたいケース。
サブドメインを分けることで、Fetch APIなどはSame Origin Policyを基本にするため、別のサブドメインや example.com
に対するリクエストなどはできなくなる。
一方で、CookieはSame Origin Policyではない。
デフォルトでは、hoge.example.com
から example.com
に対するCookieが設定できる。
これを利用したDoS(Cookie Bomb)やこの挙動を組み合わせた別の脆弱性に利用できる場合がある。
#!/bin/bash | |
# GitHub Organization に存在する全 GitHub repo を git clone するやつ | |
# 自分が Read 以上のアクセス権を持っている GitHub repo に限られる | |
# 組織名を指定する | |
GH_ORG=$1 | |
# ページングしてくれないので欲しいだけ全部が収まる数を指定する | |
GH_LIMIT=$2 | |
# 並列数 | |
XARGS_P=$3 |
#!/bin/bash | |
# GitHub Organization に存在する全 GitHub repo を git clone するやつ | |
# 自分が Read 以上のアクセス権を持っている GitHub repo に限られる | |
# 組織名を指定する | |
GH_ORG=$1 | |
# ページングしてくれないので欲しいだけ全部が収まる数を指定する | |
GH_LIMIT=$2 | |
# 並列数 | |
XARGS_P=$3 |
Based on excellent write-up from https://www.elttam.com.au/blog/ruby-deserialization/
Doesn't work to use YAML.dump(payload)
in the above script. This only produces the following YAML, which is worthless:
--- !ruby/object:Gem::Requirement
requirements:
- - ">="
- !ruby/object:Gem::Version
version: '0'
#複数多項式二次ふるい法(MPQS) | |
# の作りかけ | |
# | |
# 参考: | |
# https://en.wikipedia.org/wiki/Quadratic_sieve#Example_of_basic_sieve | |
# http://www.cs.t-kougei.ac.jp/nsim/lecture/2008/ws/QS.pdf | |
# http://www.asahi-net.or.jp/~KC2H-MSM/mathland/math12/math1207.htm | |
# http://inaz2.hatenablog.com/entry/2016/01/09/032521 | |
# http://d.hatena.ne.jp/lemniscus/20130226/1361874593#special | |
# |
require 'rational' | |
class AugmentedMatrix | |
def initialize a, b, mod | |
@matrix = [] | |
@i_size = a.size | |
@j_size = a[0].size |
To clear 307 HSTS redirects in Google Chrome (if you experimenting with SSL -- you probably wouldn't want to do this for a site that you do not opperate, since it is there to protect you), go to the following URL and delete the site.
chrome://net-internals/#hsts