⬢ DragonFlyBSD Kernel Audit
DF-0220 / kmem_window_attempt2.log
← back to finding ↓ download raw
== csprng_pcpu = 0xffffffff81199140 ==

== [A] baseline keyed read, cpu2, rand_mode=csprng (expect random) ==
00000000  f3 14 18 bc 58 09 be 45  d0 1d ad 7d df b9 ea af  |....X..E...}....|
00000010  19 75 38 6a bf 3d 6c c0  7a 55 a1 0d 46 5c 45 fb  |.u8j.=l.zU..F\E.|
00000020  38 bd a6 6a 8d a3 d4 af  39 16 b2 c0 0b da 2d ff  |8..j....9.....-.|
00000030  c7 dc 2b f0 b7 8a fc e5  d1 12 ea 98 da ab 7c 09  |..+...........|.|
de8865953bc62ab0fbd53af0bc146071

== [B] FORCE state[2]; ONE 4096-byte /dev/urandom read on cpu2 (expect 4096 x 0x00) ==
state[2] @0xfffff800898e8400: reseed_cnt=0 pool0=0 key=ALL-ZERO ctx=ALL-ZERO last_reseed=0.000000
00000000  0a bd b6 1c a9 8b 4d c2  5a 4d 15 29 f9 2f 71 22  |......M.ZM.)./q"|
00000010  8c 8b 37 00 c7 13 93 34  5c 0e 4b 74 ad e1 be 03  |..7....4\.Kt....|
00000020  6c d3 ac 9a 2f be 04 39  29 99 21 bc 01 83 62 c4  |l.../..9).!...b.|
00000030  57 0c fc 74 77 97 f9 6b  da 8d b6 e3 55 fb 16 ef  |W..tw..k....U...|
00000040  0a e3 cb 33 e3 61 67 88  ba be bf 73 d1 0c d7 2f  |...3.ag....s.../|
00000050  d5 84 c8 d7 a9 f7 ca 37  5b 8b cd 20 32 26 b3 b5  |.......7[.. 2&..|
zero_bytes=    4096 allzero=NO

== [C] re-force; 4 x 32-byte reads on cpu2 (expect 00*32 first, then deterministic) ==
state[2] @0xfffff800898e8400: reseed_cnt=0 pool0=0 key=ALL-ZERO ctx=ALL-ZERO last_reseed=0.000000
00000000  84 a1 9c 74 a5 ad 9b 0a  0a 97 09 e5 1d 90 49 08  |...t..........I.|
00000010  17 99 cc 61 25 69 36 38  83 46 9c 9e a1 bb b8 b6  |...a%i68.F......|
00000020  06 b1 aa 64 b4 cf 44 ca  7e 98 e0 4e b4 7b af 86  |...d..D.~..N.{..|
00000030  37 46 72 37 0e cc 22 17  aa d3 2e fe 74 98 46 af  |7Fr7..".....t.F.|
00000040  80 40 16 d4 a8 3b 2f e7  2e ca 2f 7b 2e fb d7 58  |.@...;/.../{...X|
00000050  b9 cf 92 a2 48 0c d6 9c  77 2a e5 f5 cb 55 b2 ad  |....H...w*...U..|
00000060  b3 64 ac 9e 23 5c bf 1b  72 e1 f2 56 f7 8f 0a df  |.d..#\..r..V....|
00000070  f5 16 00 26 38 1b a1 64  72 cd bb bf 29 ae 00 51  |...&8..dr...)..Q|
00000080

== [D] re-force; repeat [C] exactly (expect identical output) ==
state[2] @0xfffff800898e8400: reseed_cnt=0 pool0=0 key=ALL-ZERO ctx=ALL-ZERO last_reseed=0.000000
/tmp/win32.bin /tmp/win32b.bin differ: char 1, line 1
trials differ:
00000000  f0 f6 3f e8 2f 10 e9 ab  bc 0b 1b 46 2e ee a6 bd  |..?./......F....|
00000010  a9 c8 dc 85 c7 7d 67 c2  9c 17 0d c7 88 ac c5 3c  |.....}g........<|
00000020  88 dc 2c fe e4 b5 44 12  a6 e8 91 dc d7 bb a8 fa  |..,...D.........|
00000030  18 ea 9f a2 24 b7 a5 56  21 2b 55 a2 d1 cd 83 bb  |....$..V!+U.....|
00000040  d5 b1 b9 b7 ec d5 df 97  7f 88 d7 81 98 9e 04 3b  |...............;|
00000050  9e 5b 5b 61 47 cf c3 e7  26 0b 45 06 9a 43 d8 e2  |.[[aG...&.E..C..|
00000060  89 91 79 27 1b 15 c3 d7  74 9f 85 0b 0d 7f b5 4b  |..y'....t......K|
00000070  7b 65 c6 ac a6 ca 15 a6  3b 27 69 5b 56 18 15 82  |{e......;'i[V...|
00000080

== [E] re-force; same read in DEFAULT mixed mode (expect NON-zero: IBAA mask) ==
state[2] @0xfffff800898e8400: reseed_cnt=0 pool0=0 key=ALL-ZERO ctx=ALL-ZERO last_reseed=0.000000
00000000  18 73 fa c3 3c 26 0e 4f  62 69 0d 98 de ac 50 94  |.s..<&.Obi....P.|
00000010  f6 c3 99 1d da 48 c3 7c  d6 48 1d e1 50 28 06 3e  |.....H.|.H..P(.>|
00000020  17 45 3d 0d d5 ed 3e 63  4d 24 e7 1f 59 c0 c7 31  |.E=...>cM$..Y..1|
00000030  50 bd 63 a7 1c de f6 2c  66 45 76 13 71 3f 8e 17  |P.c....,fEv.q?..|

== [F] heal: pool0 already >= 96; one pinned read must reseed state[2] ==
csprng_pcpu = 0xfffff800898e5000
state[2] @0xfffff800898e8400: reseed_cnt=0 pool0=0 key=ALL-ZERO ctx=ALL-ZERO last_reseed=0.000000
00000000  f7 ca 45 01 ed 1d 5e 73  54 1d dc ec 6b 40 68 c5  |..E...^sT...k@h.|
00000010  ff c2 83 f9 87 36 42 27  1a 35 31 ff d4 37 79 bf  |.....6B'.51..7y.|
00000020
csprng_pcpu = 0xfffff800898e5000
state[2] @0xfffff800898e8400: reseed_cnt=0 pool0=0 key=ALL-ZERO ctx=ALL-ZERO last_reseed=0.000000
39f5ede00c2c6019022e75fabdf71452
== restoring default rand_mode ==
kern.rand_mode: csprng -> mixed