SlideShare une entreprise Scribd logo
1  sur  57
Télécharger pour lire hors ligne
飾らないシンプルな
エントロピーの真実
または私は如何にして心配するのを
やめてurandomを愛するようになったか
Filippo Valsorda
Filippo Valsorda
@FiloSottile
暗号やシステムエンジニアをしている
CloudFlare DNS serverの開発者であり,
そのDNSSEC実装を構築した
暗号およびセキュリティプロトコルに関して、たびたび
実装を行い、教育をし、そして破っている
ランダムバイト列
b9dbba0b7370260aa57f24dbacaf0ade3654eae237c42cadc29b730067d5
467c29d6201bc412440c81c91cab1d95dadd0411ea57b86a3973bd9032ec
c7083a0c9e96c2e3b209bd2b0a1ee4cd0de345b32f2b848dba9312428aa7
d5a067d6be0b0a5dc90695946706e0940f0cf3821f056056e756df138f8c
29fb57acc4d21f382de3df24fbb6f3f145c3d9f194285d01ac05a44f4705
40a83c0aeeb1ed32320c072711074151c866fb8f66066bcead84edd84a49
e8dd7c02c76aeb1b15b573143d8caa49267d1a1c4b9a0fa0897595839046
29956205f91a5ce94951c8fad74370acda246f20d1b365e817a6d6ac9f31
e3171e3a50007001eabc655f2d0485d5c6f8b515de7f31d3c65956301af1
1e71a2215824fb401d7e2c839505924e57ec304dc63f7e11de0673fbac3d
a48526ba13edf61b50f20e110f9865c9692ea5c0981ac253262ebcde6242
a62701fb8cb3853557417811a63f7db94c5c050f2cd552b8eb99c99d5efe
3790f405544a46b713f7329d8f77e075053c7a6958798a99ddeb89f6381b
7a6676c612fc6cdc658584c29715c6739905b312a501cb5abb809f9d2714
319d92956f8b197119af6876091507c92eccf438dfca175211e1e6f060ba
ランダムバイト列
• キー
ssh-keygen -b 2048
SSL/TLS対称キー
• Nonces, (EC)DSA シグネイチャ
• TCPシーケンス番号, DNSクエリID
• ASLR (Address space layout randomization)
• パスフレーズ, トークン, …
• シミュレーション
ランダムバイト列
一様性
ランダムバイト列
予測不能性
予測不可能なイベント
予測不可能なイベント
• カーネルから見える
• エントロピーの可変量を伝える
• 一様ではなく通常は十分ではない
cryptographically secure
pseudo-random number
generator
CSPRNG
暗号論的に安全な疑似乱数生成器
CSPRNG
d5a067d6be0b0a5dc90695946706e0940f0cf3821f056056e756df138f8c
29fb57acc4d21f382de3df24fbb6f3f145c3d9f194285d01ac05a44f4705
40a83c0aeeb1ed32320c072711074151c866fb8f66066bcead84edd84a49
e8dd7c02c76aeb1b15b573143d8caa49267d1a1c4b9a0fa089759583....
SHA2-512( )
ハッシュベースCSPRNGの例
1492bcf6062118a27098c426122651
805958a9b7149a8b4c534fb8721d81
d59029df69ddb0624fb07ecd55d4e0
6a74e0dcdf8b209576d2705e520eb5
9f1a3212b0e30d445cd08d06b3ccf8
fedb56c946266cb56d0df18dd2c79f
a09087f6a580f7f1dc8a1840de5483
75aeebc228421a1dadc091b9088b99
1b38b2f77e478cff4cc92ff99fa06d9029a2cf8a10f5cfee83ea2e7bd8a123f7
31ff26c51e048c5030cb3469349fe221835f7ffc70893c5b2674691b7dafc744
SHA2-512
ハッシュベースCSPRNGの例
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
(15,235)
68d2cc2dc357f722f2b6fef1e99f86f022e9b2a3fcc104b55084393448c5cfee
ec9b6d165f2409f7f230bc22d72fb28664acd2e4f22eb3d5ff57097c52754f10
SHA2-512
ハッシュベースCSPRNGの例
68d2cc2dc357f722f2b6fef1e99f86f0
22e9b2a3fcc104b55084393448c5cfee
ec9b6d165f2409f7f230bc22d72fb286
64acd2e4f22eb3d5ff57097c52754f10
0fb23fc707f8764892f3fa613c6ea24b27d159a6d29e6daa1a53297e96155022
17268915dd48c60864aca2de3f1052664452b99f41e1f7221711529eb3191b9f
1.27589
ハッシュベースCSPRNGの例
0fb23fc707f8764892f3fa613c6ea24b27d159a6d29e6daa1a53297e96155022
17268915dd48c60864aca2de3f1052664452b99f41e1f7221711529eb3191b9f
エントロピープール
ハッシュベースCSPRNGの例
0fb23fc707f8764892f3fa613c6ea24b
27d159a6d29e6daa1a53297e96155022
17268915dd48c60864aca2de3f105266
4452b99f41e1f7221711529eb3191b9fSHA2-512( || 0 )
f376eb8cee3b9c4c44c3b467a417ab7b
f577ac352cf9705eda0e98b6e32daad7
318aa173e463e1f9cb1e93806fd702e3
c58946ff9320aae429385e22aa6ba271
エントロピープール
0fb23fc707f8764892f3fa613c6ea24b
27d159a6d29e6daa1a53297e96155022
17268915dd48c60864aca2de3f105266
4452b99f41e1f7221711529eb3191b9fSHA2-512( || 1 )
23658111d9e6893ce67f8e4b5c37bc1f
7e05a327b0b152c60e62df48fb7ab38a
23658111d9e6893ce67f8e4b5c37bc1f
7e05a327b0b152c60e62df48fb7ab38a
ランダムバイト
0fb23fc707f8764892f3fa613c6ea24b
27d159a6d29e6daa1a53297e96155022
17268915dd48c60864aca2de3f105266
4452b99f41e1f7221711529eb3191b9fSHA2-512( || 2 )
358d7a4b03fe0f7c67b5a1d62d106e62
b4eb1d15c10e5ed3200acead3f5d8d16
75dfb256a5a270a96f69393f3dbc0ee2
77df4663cafcbdcfca8ae32aadd605a8
…
ハッシュベースCSPRNGの例
☑ 一様性
☑ 予測不能性
☑ 制限なし
(これは一例であり、実際には使用しないこと)
エントロピープール
ランダムバイト
AES-CTR CSPRNG
カウンター(CTR)モード暗号
カーネルCSPRNG
/dev/urandom
(Linux)
/dev/urandom
$ head -c 300 /dev/urandom | xxd
0000000: f60d 4bda 67a1 83b4 d095 0db9 5366 0bb7 ..K.g.......Sf..
0000010: bf20 7474 2b62 8a61 88f5 7938 52ed f77a . tt+b.a..y8R..z
0000020: c2e7 6fa9 3c66 2998 dc54 a6cb 8c59 caa6 ..o.<f)..T...Y..
0000030: ac37 9640 81d5 1691 09ca 1d64 6d4f 7e9f .7.@.......dmO~.
0000040: 6749 8674 4df6 e6d3 85de 4e19 e979 63f2 gI.tM.....N..yc.
0000050: de44 09c5 d6c7 b26b 6407 35e9 5bd3 cbd6 .D.....kd.5.[...
0000060: 1a02 10b8 6111 9713 57a6 191c 5e27 601c ....a...W...^'`.
0000070: 6965 1fc2 5798 8faf 5f6b 104f 351c b2b5 ie..W..._k.O5...
0000080: 573f 9bb9 10bf 16f6 fe0d fdff 2e49 2d86 W?...........I-.
0000090: c183 1cc1 25f1 923e 54ec e235 7ff4 db05 ....%..>T..5....
00000a0: 56bd 2b26 4e87 a7ad 6542 f01e 183c 718f V.+&N...eB...<q.
00000b0: 7437 6f31 4af6 17e7 7870 ccc9 61e3 dd94 t7o1J...xp..a...
00000c0: 72d1 1b46 bf17 c8ed 2b67 f440 3c34 c22e r..F....+g.@<4..
00000d0: a21d eb8c 5a16 3a5e 8744 6920 2b16 6d81 ....Z.:^.Di +.m.
00000e0: 6ca8 8205 63e4 3b31 92ba 03ec 0b86 256d l...c.;1......%m
00000f0: 799f b699 3a2f 9699 bc31 72d6 c225 3021 y...:/...1r..%0!
カーネルCSPRNG
/dev/random
(OS X, BSD)
カーネルCSPRNG
CryptGenRandom()
(Windows)
カーネルCSPRNG
>
ユーザ空間CSPRNG
(OpenSSL, etc.)
話は以上で終わりかも
Linux
/dev/urandom
vs.
/dev/random
/dev/[u]random
4096 bitのプールをキープ
#define INPUT_POOL_SHIFT 12
#define INPUT_POOL_WORDS (1 << (INPUT_POOL_SHIFT-5))
static __u32 input_pool_data[INPUT_POOL_WORDS];
static struct entropy_store input_pool = {
.poolinfo = &poolinfo_table[0],
.name = "input",
.limit = 1,
.lock = __SPIN_LOCK_UNLOCKED(input_pool.lock),
.pool = input_pool_data
};
https://github.com/torvalds/linux/blob/85051e295/drivers/char/random.c
/dev/[u]random
このプールは高速CRCハッシュのような様々な
ソースから予測不能なバイト列を混合されている
/*
* This function adds bytes into the entropy “pool".
* The pool is stirred with a primitive polynomial of the
* appropriate degree, and then twisted. We twist by three
* bits at a time because it's cheap to do so and helps
* slightly in the expected case where the entropy is
* concentrated in the low-order bits.
*/
static void _mix_pool_bytes(struct entropy_store *r,
const void *in, int nbytes)
https://github.com/torvalds/linux/blob/85051e295/drivers/char/random.c
/dev/[u]random
乱数はSHA1ハッシュによって生成される
static void extract_buf(struct entropy_store *r, __u8 *out)
{
sha_init(hash.w);
/* Generate a hash across the pool, 16 words (512 bits) at a time */
for (i = 0; i < r->poolinfo->poolwords; i += 16)
sha_transform(hash.w, (__u8 *)(r->pool + i), workspace);
__mix_pool_bytes(r, hash.w, sizeof(hash.w));
hash.w[0] ^= hash.w[3];
hash.w[1] ^= hash.w[4];
hash.w[2] ^= rol32(hash.w[2], 16);
memcpy(out, &hash, EXTRACT_SIZE);
}
https://github.com/torvalds/linux/blob/85051e295/drivers/char/random.c
/dev/[u]random
/dev/random と /dev/urandom は同じコード、
サイズ、エントロピーソースを使っている
static ssize_t random_read(struct file *file,
char __user *buf, size_t nbytes, loff_t *ppos)
extract_entropy_user(&blocking_pool, buf, nbytes);
static ssize_t urandom_read(struct file *file,
char __user *buf, size_t nbytes, loff_t *ppos)
extract_entropy_user(&nonblocking_pool, buf, nbytes);
https://github.com/torvalds/linux/blob/85051e295/drivers/char/random.c
/dev/[u]random
わずかの違い:
/dev/random
• どれだけのエントロピーのビット数が
プール内で混成されたか推測
• 乱数の読み込みによってその数が減少
する
• 数が減るとブロックされる
/dev/[u]random
これでは実用的でない
エントロピーは減少しない。
/dev/[u]random
これでは実用的でない
エントロピーは尽き果てない。
/dev/[u]random
一度予測不能であれば、
永遠に予測不能。
(CSPRNGが秘密ビットをリークしない限り)
/dev/[u]random
もしCSPRNGが秘密ビットをリークすると:
• ストリーム暗号が機能しなくなる
• CTRが機能しなくなる
• TLSが機能しなくなる
• PGPが機能しなくなる
Cryptographyはこれに依存している
/dev/[u]random
/dev/random のブロッキング
• 非実用的
• 受け入れることはできない (TLS)
• 危険となり得る (サイドチャネル)
/dev/[u]random
/dev/urandom は暗号にとって安全
• Google の BoringSSL が使用
• Python, Go, Ruby が使用
• Sandstormは /dev/random をこれに変更
• 暗号の専門家も同じことを言う
• 他のOSには /dev/random はない
/dev/[u]random
✦ https://www.imperialviolet.org/2015/10/17/boringssl.html
✦ http://sockpuppet.org/blog/2014/02/25/safely-generate-random-numbers/
✦ http://www.2uo.de/myths-about-urandom/
✦ http://blog.cr.yp.to/20140205-entropy.html
✦ https://developer.apple.com/library/mac/documentation/Darwin/Reference
/ManPages/man4/random.4.html
✦ https://en.wikipedia.org/wiki//dev/random#FreeBSD
✦ https://docs.sandstorm.io/en/latest/developing/security-practices/
✦ http://lists.randombit.net/pipermail/cryptography/2013-
August/004983.html
/dev/[u]random
• /dev/random は必要ない
• エントロピープールを計数し続ける必要
はない
• (havegedなどのように)プールを「補充」
する必要はない
• 乱数の「質」は低下しない
では、「すべきでないこと」を
見ていこう
Bad CSPRNG
シード不良のCSPRNG
起動直後の/dev/urandomではまだシードが不
十分で予測可能なことがある。
これはLinuxの欠点である。OSは電源オフ時に
エントロピープールを保存する必要がある。
あなたのディストリビューションではおそらくす
でにそうなっている。
シード不良のCSPRNG
起動直後の/dev/urandomではまだシードが不
十分で予測可能なことがある。
これはLinuxの欠点である。OSは電源オフ時に
エントロピープールを保存する必要がある。
たいていの組み込みデバイスではそうなってい
ない。
シード不良のCSPRNG
“弱いキーを持つネットワーク
デバイスが大量に広まっている”
Heninger, Durumeric, Wustrow, Halderman
https://factorable.net/
シード不良のCSPRNG
よりよいAPIが利用可能:
getrandom(2)
OpenBSDのgetentropy(2)と同等
urandomと同じように動作するが、ブート時に
プールが初期化する間ブロックする
https://lwn.net/Articles/606552/
シード不良のCSPRNG
ユーザー空間の CSPRNG はより
危険: シードの初期化を完全に忘れ
やすい。
実例:
http://android-
developers.blogspot.it/2013/08/some-
securerandom-thoughts.html
http://android-
developers.blogspot.it/2013/08/some-
securerandom-thoughts.html
シード不良のCSPRNG
“Bitcooinブロックチェインにおける
ECDSAの欠陥の攻略”
https://speakerdeck.com/filosottile/exploiting-ecdsa-
failures-in-the-bitcoin-blockchain
壊れたCSPRNG
2006年から2008年にかけて、Debian
のOpenSSL CSPRNGには欠陥があり、
PIDのみをシードとしていた。
それを使用する全ての出力、鍵、その他
が容易に推測可能であった。
https://www.debian.org/security/2008/dsa-1571
壊れたCSPRNG
--- openssl/trunk/rand/md_rand.c 2006/05/02 16:25:19 140
+++ openssl/trunk/rand/md_rand.c 2006/05/02 16:34:53 141
@@ -271,7 +271,10 @@ static void ssleay_rand_add(
else
MD_Update(&m,&(state[st_idx]),j);
+/*
+ * Don't add uninitialised data.
MD_Update(&m,buf,j);
+*/
MD_Update(&m,(unsigned char *)&(md_c[0]),sizeof(md_c));
MD_Final(&m,local_md);
md_c[1]++;
Non-CS PRNG
全てのPRNGが暗号学的に安全とい
うわけではない
通常のPRNGはたいてい高速で均一
だが、予測不可能ではない。
Non-CS PRNG
Mersenne Twister (MT19937)
Python: random.random()
Ruby: Random::rand()
PHP: mt_rand()
Non-CS PRNG
MT19937のコアは624の整数による状態を持ち、
この関数のようになっている
def get_mt_random_number():
if index == 0: generate_numbers()
y = STATE[index]
y ^= y >> 11
y ^= (y << 7) & 0x9d2c5680
y ^= (y << 15) & 0xefc60000
y ^= y >> 18
index = (index + 1) % 624
return y
Non-CS PRNG
出力を見ることで、その出力が生成された状態の数
を再生成することは容易である。
def untemper(y):
x = y
for i in range(32 // 18):
y ^= x >> (18 * (i + 1))
for i in range(32 // 15):
y ^= (((y >> (i*15)) % (2**15)) << ((i+1)*15)) & 0xefc60000
for i in range(32 // 7):
y ^= (((y >> (i*7)) % (2**7)) << ((i+1)*7)) & 0x9d2c5680
x = y
for i in range(32 // 11):
y ^= x >> (11 * (i + 1))
return y
Non-CS PRNG
624の出力を見れば、将来にわたるすべての出力が
予測可能である。
def untemper(y):
x = y
for i in range(32 // 18):
y ^= x >> (18 * (i + 1))
for i in range(32 // 15):
y ^= (((y >> (i*15)) % (2**15)) << ((i+1)*15)) & 0xefc60000
for i in range(32 // 7):
y ^= (((y >> (i*7)) % (2**7)) << ((i+1)*7)) & 0x9d2c5680
x = y
for i in range(32 // 11):
y ^= x >> (11 * (i + 1))
return y
まとめ:
MTのようなnon-CS PRNGを使うな。
/dev/randomは不要。
ユーザー空間のCSPRNGは避けよう。
Use /dev/urandom
Thank you! Q/A
疑問? 不満がある? 言って!
Filippo Valsorda — @FiloSottile
filippo@cloudflare.com
Slides: https://filippo.io/entropy-talk

Contenu connexe

Tendances

Hokkaido.cap#7 ケーススタディ(セキュリティ解析:前編)
Hokkaido.cap#7 ケーススタディ(セキュリティ解析:前編)Hokkaido.cap#7 ケーススタディ(セキュリティ解析:前編)
Hokkaido.cap#7 ケーススタディ(セキュリティ解析:前編)
Panda Yamaki
 

Tendances (20)

The basic of performance tuning
The basic of performance tuningThe basic of performance tuning
The basic of performance tuning
 
PHP AST 徹底解説(補遺)
PHP AST 徹底解説(補遺)PHP AST 徹底解説(補遺)
PHP AST 徹底解説(補遺)
 
Fbx解説 (1 構文編) (1)
Fbx解説 (1  構文編) (1)Fbx解説 (1  構文編) (1)
Fbx解説 (1 構文編) (1)
 
Reactive Extensions v2.0
Reactive Extensions v2.0Reactive Extensions v2.0
Reactive Extensions v2.0
 
Hokkaido.cap#3 ケーススタディ(基礎編)
Hokkaido.cap#3 ケーススタディ(基礎編)Hokkaido.cap#3 ケーススタディ(基礎編)
Hokkaido.cap#3 ケーススタディ(基礎編)
 
Varnish 4.0 Release Party in Tokyo発表資料
Varnish 4.0 Release Party in Tokyo発表資料Varnish 4.0 Release Party in Tokyo発表資料
Varnish 4.0 Release Party in Tokyo発表資料
 
超簡単!Apache TomcatをWindowsにインストール
超簡単!Apache TomcatをWindowsにインストール超簡単!Apache TomcatをWindowsにインストール
超簡単!Apache TomcatをWindowsにインストール
 
超簡単! MySQLをWindowsにインストール
超簡単! MySQLをWindowsにインストール超簡単! MySQLをWindowsにインストール
超簡単! MySQLをWindowsにインストール
 
Hokkaido.cap#7 ケーススタディ(セキュリティ解析:前編)
Hokkaido.cap#7 ケーススタディ(セキュリティ解析:前編)Hokkaido.cap#7 ケーススタディ(セキュリティ解析:前編)
Hokkaido.cap#7 ケーススタディ(セキュリティ解析:前編)
 
Inside winnyp
Inside winnypInside winnyp
Inside winnyp
 
Scapy presentation
Scapy presentationScapy presentation
Scapy presentation
 
LibreOffice 4 under NetBSD with pkgsrc
LibreOffice 4 under NetBSD with pkgsrcLibreOffice 4 under NetBSD with pkgsrc
LibreOffice 4 under NetBSD with pkgsrc
 
超簡単! PostgreSQLをWindowsにインストール
超簡単! PostgreSQLをWindowsにインストール超簡単! PostgreSQLをWindowsにインストール
超簡単! PostgreSQLをWindowsにインストール
 
Ylug 110th kpatch code reading
Ylug 110th kpatch code readingYlug 110th kpatch code reading
Ylug 110th kpatch code reading
 
Scapy presentation Remake(訂正)
Scapy presentation Remake(訂正)Scapy presentation Remake(訂正)
Scapy presentation Remake(訂正)
 
気になるあのコにアタック☆
気になるあのコにアタック☆気になるあのコにアタック☆
気になるあのコにアタック☆
 
GoogleのSHA-1のはなし
GoogleのSHA-1のはなしGoogleのSHA-1のはなし
GoogleのSHA-1のはなし
 
Project Loom - 限定継続と軽量スレッド -
Project Loom - 限定継続と軽量スレッド - Project Loom - 限定継続と軽量スレッド -
Project Loom - 限定継続と軽量スレッド -
 
Rpn and forth 超入門
Rpn and forth 超入門Rpn and forth 超入門
Rpn and forth 超入門
 
Kobe.R #15 - Incanter チョットシッテル
Kobe.R #15 - Incanter チョットシッテルKobe.R #15 - Incanter チョットシッテル
Kobe.R #15 - Incanter チョットシッテル
 

En vedette

kyoungju_kwak_the_new_wave_of_cyber_terror
kyoungju_kwak_the_new_wave_of_cyber_terrorkyoungju_kwak_the_new_wave_of_cyber_terror
kyoungju_kwak_the_new_wave_of_cyber_terror
PacSecJP
 
Akila srinivasan microsoft-bug_bounty-(publish)
Akila srinivasan microsoft-bug_bounty-(publish)Akila srinivasan microsoft-bug_bounty-(publish)
Akila srinivasan microsoft-bug_bounty-(publish)
PacSecJP
 
Guang gong escalate privilege by vulnerabilities in android system services ...
Guang gong  escalate privilege by vulnerabilities in android system services ...Guang gong  escalate privilege by vulnerabilities in android system services ...
Guang gong escalate privilege by vulnerabilities in android system services ...
PacSecJP
 
Kochetova+osipv atm how_to_make_the_fraud__final
Kochetova+osipv atm how_to_make_the_fraud__finalKochetova+osipv atm how_to_make_the_fraud__final
Kochetova+osipv atm how_to_make_the_fraud__final
PacSecJP
 
Qinghao vulnerabilities mining technology of cloud and virtualization platfo...
Qinghao  vulnerabilities mining technology of cloud and virtualization platfo...Qinghao  vulnerabilities mining technology of cloud and virtualization platfo...
Qinghao vulnerabilities mining technology of cloud and virtualization platfo...
PacSecJP
 
Andersson hacking ds_mx_with_sdr_pac_sec_2016_english
Andersson hacking ds_mx_with_sdr_pac_sec_2016_englishAndersson hacking ds_mx_with_sdr_pac_sec_2016_english
Andersson hacking ds_mx_with_sdr_pac_sec_2016_english
PacSecJP
 
Andersson hacking ds_mx_with_sdr_pac_sec_2016_japanese
Andersson hacking ds_mx_with_sdr_pac_sec_2016_japaneseAndersson hacking ds_mx_with_sdr_pac_sec_2016_japanese
Andersson hacking ds_mx_with_sdr_pac_sec_2016_japanese
PacSecJP
 
Maxim Bullet Proof Hosting Services pac_sec_jp
Maxim Bullet Proof Hosting Services pac_sec_jpMaxim Bullet Proof Hosting Services pac_sec_jp
Maxim Bullet Proof Hosting Services pac_sec_jp
PacSecJP
 
Nishimura finding vulnerabilities-in-firefox-for-i-os-(nishimunea)
Nishimura finding vulnerabilities-in-firefox-for-i-os-(nishimunea)Nishimura finding vulnerabilities-in-firefox-for-i-os-(nishimunea)
Nishimura finding vulnerabilities-in-firefox-for-i-os-(nishimunea)
PacSecJP
 
Shusei tomonaga pac_sec_20171026_jp
Shusei tomonaga pac_sec_20171026_jpShusei tomonaga pac_sec_20171026_jp
Shusei tomonaga pac_sec_20171026_jp
PacSecJP
 

En vedette (20)

kyoungju_kwak_the_new_wave_of_cyber_terror
kyoungju_kwak_the_new_wave_of_cyber_terrorkyoungju_kwak_the_new_wave_of_cyber_terror
kyoungju_kwak_the_new_wave_of_cyber_terror
 
Mickey pac sec2016_final_ja
Mickey pac sec2016_final_jaMickey pac sec2016_final_ja
Mickey pac sec2016_final_ja
 
Akila srinivasan microsoft-bug_bounty-(publish)
Akila srinivasan microsoft-bug_bounty-(publish)Akila srinivasan microsoft-bug_bounty-(publish)
Akila srinivasan microsoft-bug_bounty-(publish)
 
Guang gong escalate privilege by vulnerabilities in android system services ...
Guang gong  escalate privilege by vulnerabilities in android system services ...Guang gong  escalate privilege by vulnerabilities in android system services ...
Guang gong escalate privilege by vulnerabilities in android system services ...
 
Pac sec2016 flyer_agenda
Pac sec2016 flyer_agendaPac sec2016 flyer_agenda
Pac sec2016 flyer_agenda
 
Kochetova+osipv atm how_to_make_the_fraud__final
Kochetova+osipv atm how_to_make_the_fraud__finalKochetova+osipv atm how_to_make_the_fraud__final
Kochetova+osipv atm how_to_make_the_fraud__final
 
Kasza smashing the_jars
Kasza smashing the_jarsKasza smashing the_jars
Kasza smashing the_jars
 
Qinghao vulnerabilities mining technology of cloud and virtualization platfo...
Qinghao  vulnerabilities mining technology of cloud and virtualization platfo...Qinghao  vulnerabilities mining technology of cloud and virtualization platfo...
Qinghao vulnerabilities mining technology of cloud and virtualization platfo...
 
Andersson hacking ds_mx_with_sdr_pac_sec_2016_english
Andersson hacking ds_mx_with_sdr_pac_sec_2016_englishAndersson hacking ds_mx_with_sdr_pac_sec_2016_english
Andersson hacking ds_mx_with_sdr_pac_sec_2016_english
 
Andersson hacking ds_mx_with_sdr_pac_sec_2016_japanese
Andersson hacking ds_mx_with_sdr_pac_sec_2016_japaneseAndersson hacking ds_mx_with_sdr_pac_sec_2016_japanese
Andersson hacking ds_mx_with_sdr_pac_sec_2016_japanese
 
James Windows10 elevator action final-jp
James Windows10 elevator action final-jpJames Windows10 elevator action final-jp
James Windows10 elevator action final-jp
 
Hyperchem bad barcode final_ja
Hyperchem  bad barcode final_jaHyperchem  bad barcode final_ja
Hyperchem bad barcode final_ja
 
Martin UPnP - pacsec -final-ja
Martin UPnP - pacsec -final-jaMartin UPnP - pacsec -final-ja
Martin UPnP - pacsec -final-ja
 
Richard high performance fuzzing ja
Richard  high performance fuzzing jaRichard  high performance fuzzing ja
Richard high performance fuzzing ja
 
Maxim Bullet Proof Hosting Services pac_sec_jp
Maxim Bullet Proof Hosting Services pac_sec_jpMaxim Bullet Proof Hosting Services pac_sec_jp
Maxim Bullet Proof Hosting Services pac_sec_jp
 
Adam blue toot pacsec-2015-jp
Adam blue toot pacsec-2015-jpAdam blue toot pacsec-2015-jp
Adam blue toot pacsec-2015-jp
 
Villegas first pacsec_2016
Villegas first pacsec_2016Villegas first pacsec_2016
Villegas first pacsec_2016
 
Nishimura finding vulnerabilities-in-firefox-for-i-os-(nishimunea)
Nishimura finding vulnerabilities-in-firefox-for-i-os-(nishimunea)Nishimura finding vulnerabilities-in-firefox-for-i-os-(nishimunea)
Nishimura finding vulnerabilities-in-firefox-for-i-os-(nishimunea)
 
Moony li pacsec-1.8
Moony li pacsec-1.8Moony li pacsec-1.8
Moony li pacsec-1.8
 
Shusei tomonaga pac_sec_20171026_jp
Shusei tomonaga pac_sec_20171026_jpShusei tomonaga pac_sec_20171026_jp
Shusei tomonaga pac_sec_20171026_jp
 

Similaire à Filippo, plain simple reality of entropy ja

SDN Lab環境でのRobotFramework実践活用
SDN Lab環境でのRobotFramework実践活用SDN Lab環境でのRobotFramework実践活用
SDN Lab環境でのRobotFramework実践活用
Toshiki Tsuboi
 
スタート低レイヤー #0
スタート低レイヤー #0スタート低レイヤー #0
スタート低レイヤー #0
Kiwamu Okabe
 
組み込みシステムのセキュリティ
組み込みシステムのセキュリティ組み込みシステムのセキュリティ
組み込みシステムのセキュリティ
FFRI, Inc.
 
HandlerSocket plugin for MySQL
HandlerSocket plugin for MySQLHandlerSocket plugin for MySQL
HandlerSocket plugin for MySQL
akirahiguchi
 
あんしんなWebサーバーのためのSSL設定
あんしんなWebサーバーのためのSSL設定あんしんなWebサーバーのためのSSL設定
あんしんなWebサーバーのためのSSL設定
Takayuki Ino
 
#RouterBOARD 勉強会 OSPF検証班 appendix1.1
#RouterBOARD 勉強会 OSPF検証班 appendix1.1#RouterBOARD 勉強会 OSPF検証班 appendix1.1
#RouterBOARD 勉強会 OSPF検証班 appendix1.1
de foggge
 
Linux/DB Tuning (DevSumi2010, Japanese)
Linux/DB Tuning (DevSumi2010, Japanese)Linux/DB Tuning (DevSumi2010, Japanese)
Linux/DB Tuning (DevSumi2010, Japanese)
Yoshinori Matsunobu
 

Similaire à Filippo, plain simple reality of entropy ja (20)

SDN Lab環境でのRobotFramework実践活用
SDN Lab環境でのRobotFramework実践活用SDN Lab環境でのRobotFramework実践活用
SDN Lab環境でのRobotFramework実践活用
 
スタート低レイヤー #0
スタート低レイヤー #0スタート低レイヤー #0
スタート低レイヤー #0
 
A story of porting OpenBSD/luna88k
A story of porting OpenBSD/luna88kA story of porting OpenBSD/luna88k
A story of porting OpenBSD/luna88k
 
How to apt-get from the internal network: remote sshd with kneesocks
How to apt-get from the internal network: remote sshd with kneesocksHow to apt-get from the internal network: remote sshd with kneesocks
How to apt-get from the internal network: remote sshd with kneesocks
 
組み込みシステムのセキュリティ
組み込みシステムのセキュリティ組み込みシステムのセキュリティ
組み込みシステムのセキュリティ
 
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテムSmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
 
HandlerSocket plugin for MySQL
HandlerSocket plugin for MySQLHandlerSocket plugin for MySQL
HandlerSocket plugin for MySQL
 
SYN cookies
SYN cookiesSYN cookies
SYN cookies
 
20060520.tcp
20060520.tcp20060520.tcp
20060520.tcp
 
オープンソース開発と、 あるフレームバッファコンソールの話 ~名古屋応用編~
オープンソース開発と、あるフレームバッファコンソールの話~名古屋応用編~オープンソース開発と、あるフレームバッファコンソールの話~名古屋応用編~
オープンソース開発と、 あるフレームバッファコンソールの話 ~名古屋応用編~
 
カオスエンジニアリング入門〜ChaosBladeの紹介〜
カオスエンジニアリング入門〜ChaosBladeの紹介〜カオスエンジニアリング入門〜ChaosBladeの紹介〜
カオスエンジニアリング入門〜ChaosBladeの紹介〜
 
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
 
あんしんなWebサーバーのためのSSL設定
あんしんなWebサーバーのためのSSL設定あんしんなWebサーバーのためのSSL設定
あんしんなWebサーバーのためのSSL設定
 
第一回コンテナ情報交換会@関西
第一回コンテナ情報交換会@関西第一回コンテナ情報交換会@関西
第一回コンテナ情報交換会@関西
 
RouterBOARD with OpenFlow
RouterBOARD with OpenFlowRouterBOARD with OpenFlow
RouterBOARD with OpenFlow
 
C/C++プログラマのための開発ツール
C/C++プログラマのための開発ツールC/C++プログラマのための開発ツール
C/C++プログラマのための開発ツール
 
#RouterBOARD 勉強会 OSPF検証班 appendix1.1
#RouterBOARD 勉強会 OSPF検証班 appendix1.1#RouterBOARD 勉強会 OSPF検証班 appendix1.1
#RouterBOARD 勉強会 OSPF検証班 appendix1.1
 
Intel AVX-512/富岳SVE用SIMDコード生成ライブラリsimdgen
Intel AVX-512/富岳SVE用SIMDコード生成ライブラリsimdgenIntel AVX-512/富岳SVE用SIMDコード生成ライブラリsimdgen
Intel AVX-512/富岳SVE用SIMDコード生成ライブラリsimdgen
 
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
 
Linux/DB Tuning (DevSumi2010, Japanese)
Linux/DB Tuning (DevSumi2010, Japanese)Linux/DB Tuning (DevSumi2010, Japanese)
Linux/DB Tuning (DevSumi2010, Japanese)
 

Plus de PacSecJP

Kavya racharla ndh-naropanth_fin_jp-final
Kavya racharla ndh-naropanth_fin_jp-finalKavya racharla ndh-naropanth_fin_jp-final
Kavya racharla ndh-naropanth_fin_jp-final
PacSecJP
 
Ryder robertson security-considerations_in_the_supply_chain_2017.11.02
Ryder robertson security-considerations_in_the_supply_chain_2017.11.02Ryder robertson security-considerations_in_the_supply_chain_2017.11.02
Ryder robertson security-considerations_in_the_supply_chain_2017.11.02
PacSecJP
 
Ryder robertson pac-sec skeleton 2017_jp
Ryder robertson pac-sec skeleton 2017_jpRyder robertson pac-sec skeleton 2017_jp
Ryder robertson pac-sec skeleton 2017_jp
PacSecJP
 
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-j
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-jYuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-j
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-j
PacSecJP
 
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_finalYuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final
PacSecJP
 
Rouault imbert view_alpc_rpc_pacsec_jp
Rouault imbert view_alpc_rpc_pacsec_jpRouault imbert view_alpc_rpc_pacsec_jp
Rouault imbert view_alpc_rpc_pacsec_jp
PacSecJP
 
Rouault imbert alpc_rpc_pacsec
Rouault imbert alpc_rpc_pacsecRouault imbert alpc_rpc_pacsec
Rouault imbert alpc_rpc_pacsec
PacSecJP
 
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
PacSecJP
 
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
PacSecJP
 
Yunusov babin 7sins-pres_atm_v4(2)_jp
Yunusov babin 7sins-pres_atm_v4(2)_jpYunusov babin 7sins-pres_atm_v4(2)_jp
Yunusov babin 7sins-pres_atm_v4(2)_jp
PacSecJP
 
Yunusov babin 7 sins pres atm v2
Yunusov babin 7 sins pres atm v2Yunusov babin 7 sins pres atm v2
Yunusov babin 7 sins pres atm v2
PacSecJP
 
Shusei tomonaga pac_sec_20171026
Shusei tomonaga pac_sec_20171026Shusei tomonaga pac_sec_20171026
Shusei tomonaga pac_sec_20171026
PacSecJP
 
Kavya racharla ndh-naropanth_fin
Kavya racharla ndh-naropanth_finKavya racharla ndh-naropanth_fin
Kavya racharla ndh-naropanth_fin
PacSecJP
 
Lucas apa pacsec_slides_jp-final
Lucas apa pacsec_slides_jp-finalLucas apa pacsec_slides_jp-final
Lucas apa pacsec_slides_jp-final
PacSecJP
 
Marc schoenefeld grandma‘s old handbag_draft2_ja
Marc schoenefeld grandma‘s old handbag_draft2_jaMarc schoenefeld grandma‘s old handbag_draft2_ja
Marc schoenefeld grandma‘s old handbag_draft2_ja
PacSecJP
 

Plus de PacSecJP (20)

Kavya racharla ndh-naropanth_fin_jp-final
Kavya racharla ndh-naropanth_fin_jp-finalKavya racharla ndh-naropanth_fin_jp-final
Kavya racharla ndh-naropanth_fin_jp-final
 
Ryder robertson security-considerations_in_the_supply_chain_2017.11.02
Ryder robertson security-considerations_in_the_supply_chain_2017.11.02Ryder robertson security-considerations_in_the_supply_chain_2017.11.02
Ryder robertson security-considerations_in_the_supply_chain_2017.11.02
 
Ryder robertson pac-sec skeleton 2017_jp
Ryder robertson pac-sec skeleton 2017_jpRyder robertson pac-sec skeleton 2017_jp
Ryder robertson pac-sec skeleton 2017_jp
 
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-j
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-jYuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-j
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final-j
 
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_finalYuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final
Yuki chen from_out_of_memory_to_remote_code_execution_pac_sec2017_final
 
Rouault imbert view_alpc_rpc_pacsec_jp
Rouault imbert view_alpc_rpc_pacsec_jpRouault imbert view_alpc_rpc_pacsec_jp
Rouault imbert view_alpc_rpc_pacsec_jp
 
Rouault imbert alpc_rpc_pacsec
Rouault imbert alpc_rpc_pacsecRouault imbert alpc_rpc_pacsec
Rouault imbert alpc_rpc_pacsec
 
Di shen pacsec_jp-final
Di shen pacsec_jp-finalDi shen pacsec_jp-final
Di shen pacsec_jp-final
 
Di shen pacsec_final
Di shen pacsec_finalDi shen pacsec_final
Di shen pacsec_final
 
Anıl kurmuş pacsec3-ja
Anıl kurmuş pacsec3-jaAnıl kurmuş pacsec3-ja
Anıl kurmuş pacsec3-ja
 
Anıl kurmuş pacsec3
Anıl kurmuş pacsec3Anıl kurmuş pacsec3
Anıl kurmuş pacsec3
 
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
 
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
Ahn pacsec2017 key-recovery_attacks_against_commercial_white-box_cryptography...
 
Yunusov babin 7sins-pres_atm_v4(2)_jp
Yunusov babin 7sins-pres_atm_v4(2)_jpYunusov babin 7sins-pres_atm_v4(2)_jp
Yunusov babin 7sins-pres_atm_v4(2)_jp
 
Yunusov babin 7 sins pres atm v2
Yunusov babin 7 sins pres atm v2Yunusov babin 7 sins pres atm v2
Yunusov babin 7 sins pres atm v2
 
Shusei tomonaga pac_sec_20171026
Shusei tomonaga pac_sec_20171026Shusei tomonaga pac_sec_20171026
Shusei tomonaga pac_sec_20171026
 
Kavya racharla ndh-naropanth_fin
Kavya racharla ndh-naropanth_finKavya racharla ndh-naropanth_fin
Kavya racharla ndh-naropanth_fin
 
Lucas apa pacsec_slides_jp-final
Lucas apa pacsec_slides_jp-finalLucas apa pacsec_slides_jp-final
Lucas apa pacsec_slides_jp-final
 
Lucas apa pacsec slides
Lucas apa pacsec slidesLucas apa pacsec slides
Lucas apa pacsec slides
 
Marc schoenefeld grandma‘s old handbag_draft2_ja
Marc schoenefeld grandma‘s old handbag_draft2_jaMarc schoenefeld grandma‘s old handbag_draft2_ja
Marc schoenefeld grandma‘s old handbag_draft2_ja
 

Filippo, plain simple reality of entropy ja