disguise
本文最后更新于67 天前,其中的信息可能已经过时,如有错误请发送邮件到big_fw@foxmail.com

web

name: aaaaaaaaaaa
cookie: OuQ8RKZ9v61RFPShspbyzg==

echo OuQ8RKZ9v61RFPShspbyzg== | base64 -d | hexdump
0000000 e43a 443c 7da6 adbf 1451 a1f4 96b2 cef2
0000010
name: aaaaaaaaaaaa
cookie: FUoxH12UY/N58pkbRNAAf8JwkfrsOdSxW16pbszGJLY=

echo FUoxH12UY/N58pkbRNAAf8JwkfrsOdSxW16pbszGJLY= | base64 -d | hexdump
0000000 4a15 1f31 945d f363 f279 1b99 d044 7f00
0000010 70c2 fa91 39ec b1d4 5e5b 6ea9 c6cc b624
0000020
name: bbbbbbbbbbbb
cookie: bTNkZa3bH9/+krAEJafpfcJwkfrsOdSxW16pbszGJLY=

echo bTNkZa3bH9/+krAEJafpfcJwkfrsOdSxW16pbszGJLY= | base64 -d | hexdump
0000000 336d 6564 dbad df1f 92fe 04b0 a725 7de9
0000010 70c2 fa91 39ec b1d4 5e5b 6ea9 c6cc b624
0000020

AES 加密填充 PKCS #7

PKCS #7 填充规则是:如果数据长度需要填充 n 个字节才能达到块大小的整数倍,那么就在数据的末尾填充 n 个值为 n 的字节。具体来说:

若数据长度刚好是块大小的整数倍,也需要填充一个完整的块,填充的字节值为块大小。例如,对于 16 字节的块大小,会填充 16 个值为 16 的字节。
若数据长度距离下一个块大小还差 n 个字节,就在数据末尾添加 n 个值为 n 的字节。
如果只填充1个字节,那么填入的值就是0×1;恰好8个字节时还要补8个字节的0×08
正是这种即使恰好是8个字节也需要再补充字节的规定,可以让解密的数据很确定无误的移除多余的字节。

当用户名长度为11和12时,密钥长度为16和32字节。关键在于变化的点,在11以内的长度是16字节。

由输出的长度判断为aes-128,ecb模式是相同区域的明文和密文对应。那么12个字节+16个字节+16个字节=44个字节,应该会使后面的两段相同。

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

FUoxH12UY/N58pkbRNAAf0Kfd1bvz3G39ZMOl2HnjTFCn3dW789xt/WTDpdh540xwnCR+uw51LFbXqluzMYktg==

echo FUoxH12UY/N58pkbRNAAf0Kfd1bvz3G39ZMOl2HnjTFCn3dW789xt/WTDpdh540xwnCR+uw51LFbXqluzMYktg== | base64 -d |xxd

00000000: 154a 311f 5d94 63f3 79f2 991b 44d0 007f .J1.].c.y…D…
00000010: 429f 7756 efcf 71b7 f593 0e97 61e7 8d31 B.wV..q…..a..1
00000020: 429f 7756 efcf 71b7 f593 0e97 61e7 8d31 B.wV..q…..a..1
00000030: c270 91fa ec39 d4b1 5b5e a96e ccc6 24b6 .p…9..[^.n..$.

知道是有4个字节的salt的aes-ecb-128的加密。

同时有一个管理员用户叫 simpleAdmin 11位 加上4个字节的salt 15位 加密时再补上一位 \0x1 密文为16个字节

如果明文为 simpleAdmin\0x1 加上4个字节的salt 16位 加密时补上16位 \0x16 密文为32个字节。

因为 前面16个字节和后面16个字节是分开的区域。密文和明文对应。可以获得simpleAdmin\0x1 的密文

+1+3/NxCLcIR0Jq9qDudF8JwkfrsOdSxW16pbszGJLY=

echo +1+3/NxCLcIR0Jq9qDudF8JwkfrsOdSxW16pbszGJLY= |base64 -d | hexdump
0000000 5ffb fcb7 42dc c22d d011 bd9a 3ba8 179d
0000010 70c2 fa91 39ec b1d4 5e5b 6ea9 c6cc b624
0000020

bTNkZa3bH9/+krAEJafpfc JwkfrsOdSxW16pbszGJLY=

+1+3/NxCLcIR0Jq9qDudF8 JwkfrsOdSxW16pbszGJLY=

后半截是另外一个区域

+1+3/NxCLcIR0Jq9qDudF8

文末附加内容
暂无评论

发送评论 编辑评论

|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇