DVWA靶场Cryptography模块medium不看原码做法
因为本关使用的是aes加密,又给出了部分用户的token,同时这些用户的token信息都有部分符合我的通过条件,所以我认为可以通过拼接各个token中我们所需要的部分来构造payload
不知道密钥没关系,随便用哪个密钥加密都可以,我只需要知道他们的位数就可以,但不确定是否有效。
{
"user": "Sweep",
}
加密后:
80284096aa4ee3236c48a5c96a38514f02c8d4655a7baa3578bee5197d65b3ef
{
"user": "Sweep",
"ex": 1723620372,
}
加密后:
80284096aa4ee3236c48a5c96a38514feefdf9dbd690cb8fc448f57b6ef75549a738755a1a004f6f756353d48f24b85c
相比较下在前32位都一样
用户Sweep的token:
3061837c4f9debaf19d4539bfa0074c1b85bb230876912bf3c66e50758b222d083f2d277d9e5fb9a951e74bee57c77a3caeb574f10f349ed839fbfd223903368873580b2e3e494ace1e9e8035f0e7e07
截取用户Sweep的token的前32位为:3061837c4f9debaf19d4539bfa0074c1
{
"user": "Sweep",
"ex": 1723620372,
}
加密后:
80284096aa4ee3236c48a5c96a38514feefdf9dbd690cb8fc448f57b6ef75549a738755a1a004f6f756353d48f24b85c
{
"user": "Sweep",
"ex": 1723620372,
"level": "admin",
}
加密后:
80284096aa4ee3236c48a5c96a38514feefdf9dbd690cb8fc448f57b6ef75549f699aa47c7673f419f33f06327d5d30d2ed397ce867840baa18abdadcf0d4307794113e90cae96df4db7f0e6feb4df77
相比较在64位前都一样
用户Soo的token为:
5fec0b1c993f46c8bad8a5c8d9bb9698174d4b2659239bbc50646e14a70becef83f2d277d9e5fb9a951e74bee57c77a3c9acb1f268c06c5e760a9d728e081fab65e83b9f97e65cb7c7c4b8427bd44abc16daa00fd8cd0105c97449185be77ef5
于是取出Soo的token第33位到64位拼接为:
3061837c4f9debaf19d4539bfa0074c1174d4b2659239bbc50646e14a70becef
{
"user": "Sweep",
"ex": 1723620372,
"level": "admin",
}
加密后:
80284096aa4ee3236c48a5c96a38514feefdf9dbd690cb8fc448f57b6ef75549f699aa47c7673f419f33f06327d5d30d2ed397ce867840baa18abdadcf0d4307794113e90cae96df4db7f0e6feb4df77
{
"user": "Sweep",
"ex": 1723620372,
"level": "admin",
"bio": "blah"
}
加密后:
80284096aa4ee3236c48a5c96a38514feefdf9dbd690cb8fc448f57b6ef75549f699aa47c7673f419f33f06327d5d30d2ed397ce867840baa18abdadcf0d4307ef9481575888289706db402b3fb03bef659483e00fa47c57bb50a219747fd958
经比较在129位前的token都一样
管理员Sooty的token为:
e287af752ed3f9601befd45726785bd9b85bb230876912bf3c66e50758b222d0837d1e6b16bfae07b776feb7afe576305aec34b41499579d3fb6acc8dc92fd5fcea8743c3b2904de83944d6b19733cdb48dd16048ed89967c250ab7f00629dba
取出管理员token的65位到128位再拼接变成:
3061837c4f9debaf19d4539bfa0074c1174d4b2659239bbc50646e14a70becef837d1e6b16bfae07b776feb7afe576305aec34b41499579d3fb6acc8dc92fd5f
最后就差bio没有破解了,我们比较我们目前构造的token与Sweep的token
3061837c4f9debaf19d4539bfa0074c1174d4b2659239bbc50646e14a70becef837d1e6b16bfae07b776feb7afe576305aec34b41499579d3fb6acc8dc92fd5f
3061837c4f9debaf19d4539bfa0074c1b85bb230876912bf3c66e50758b222d083f2d277d9e5fb9a951e74bee57c77a3caeb574f10f349ed839fbfd223903368873580b2e3e494ace1e9e8035f0e7e07
Sweep的token从第129位开始是我们构造的payload所没有的,所以我们截取Sweep的token从第129位知道结束,并拼接到我们的payload上,结果为:3061837c4f9debaf19d4539bfa0074c1174d4b2659239bbc50646e14a70becef837d1e6b16bfae07b776feb7afe576305aec34b41499579d3fb6acc8dc92fd5f873580b2e3e494ace1e9e8035f0e7e07,这就是最终payload