网络安全:Web 安全 面试题.(SQL注入)

网络安全:Web 安全 面试题.(SQL注入)

网络安全面试是指在招聘过程中,面试官会针对应聘者的网络安全相关知识和技能进行评估和考察。这种面试通常包括以下几个方面:

(1)基础知识:包括网络基础知识、操作系统知识、密码学知识等。
(2)安全技术:如入侵检测、防火墙配置、密码管理、漏洞分析等技术的掌握程度。
(3)安全实践:评估应聘者在实际工作中解决网络安全问题的能力,如案例分析、渗透测试等。
(4)安全意识:了解应聘者对网络安全的重视程度和责任心,以及在安全事故发生时的应对能力。
(5)项目经验:询问应聘者参与过的网络安全相关项目,了解其在项目中的具体工作和贡献。
(6)沟通表达:考察应聘者的沟通能力和逻辑思维,以及解决问题的方法。

目录:

网络安全:Web 安全 面试题.(SQL注入)

(1)SQL 注入种类:

(2)盲注是什么,怎么盲注:

(3)宽字节注入产生原理以及根本原因:

(4)SOL注入能做什么:

(5)以下链接存在 SQL 注入漏洞,对于这个变形注入,你有什么思路:

(6)发现 demo.jsp?uid=110 注入点,你有哪几种思路获取 webshell,哪种是优选:

(7)sqlmap 怎么对一个注入点注入:

(8)Sqlmap 常用参数:

(9)SQL注入防护方法:

(10)为什么参数化查询可以防止 SQL注入:

(11)mysql 的网站注入 5.0 以上和 5.0 以下有什么区别:

SQL注入测试实战:

SQL注入工具测试实战:


(1)SQL 注入种类:

数据的传递方式可以分为:get 注入post 注入cookie 注入

根据 注入点 类型分类:数字型字符型

根据 执行效果 分类:有回显的注入盲注报错注入堆叠注入宽字节注入


(2)盲注是什么,怎么盲注:

盲注是在 SOL注入攻击过程中,服务器关闭了错误回显,我们单纯通过服务器返回内容的变化来判断是否存在 SOL注入和利用的方式

盲注的手段有两种:

(1)通过页面的返回内容是否正确(boolean-based),来验证是否存在注入;

(2)通过 SQL 语句处理时间的不同来判断是否存在注入(time-based),可以用benchmark,sleep 等造成延时效果的函数;


(3)宽字节注入产生原理以及根本原因:

产生原理:

多字节字符集的使用:多字节字符集中,如GBK,一个汉字可能由两个字节组成。这种编码方式允许将两个字节识别为一个字符.

转义函数的局限性:例如 PHP 中的 addslashes()函数,它在特殊字符前添加反斜线(\)以防止SQL注入。但当使用宽字节字符集时,转义函数可能无法正确处理所有字符,导致转义失效.

编码转换问题:在使用 PHP 连接MySQL数据库时,如果设置了特定的字符集(如GBK),在字符编码转换过程中,某些字节序列可能被错误地解释为单个字符,从而绕过了转义机制.

根本原因:

字符集不统一:应用程序和数据库系统之间使用不同的字符集,可能导致字符编码和解码过程中出现不一致,为宽字节注入提供了机会.

转义机制的缺陷:转义函数可能没有考虑到所有可能的字符编码情况,特别是在处理多字节字符集时,导致转义不彻底或错误.

安全措施不足:如果应用程序仅依赖于转义函数来防止SQL注入,而没有采取更全面的安全措施,如使用预处理语句或参数化查询,就可能存在安全漏洞.


(4)何突破注入时字符被转义:

宽字符注入、hex 编码绕过


(5)SOL注入能做什么:

(1)绕过登录验证,比如说使用万能密码登录网站

(2)获取网站管理员账号密码

(3)读取文件写入 webshell 等;


(6)以下链接存在 SQL 注入漏洞,对于这个变形注入,你有什么思路:

demo.do?DATA=AjAxNg==

DATA 有可能经过了 base64 编码再传入服务器,所以我们也要对参数进行 base64 编码才能正确完成测试.


(7)发现 demo.jsp?uid=110 注入点,你有哪几种思路获取 webshell,哪种是优选:

有写入权限的,构造联合查询语句使用 using INTO OUTFILE,可以将查询的输出重定向到系统的文件中,这样去写入 WebShell 使用 sqlmap -os-shell 原理和上面一种相同,来直接获得一个 Shell,这样效率更高。

通过构造联合查询语句得到网站管理员的账户和密码,然后扫后台登录后台,再在后台通过改包上传等方法上传 Shell.


(8)延时注入如何来判断:

if(ascii(substr(“hello", 1, 1))=104, sleep(5), 1)


(9)sqlmap 怎么对一个注入点注入:

(1)如果是 get 型号,直接,sqImap -u "注入点网址"

(2)如果是 post 型注入点,可以 sqmap -u "注入点网址" --data="post 的参数"

(3)如果是 cookie,X-Forwarded-For 等,可以访问的时候,用 burpsuite 抓句,注入处用号替换,放到文件里,然后 sqlmap -r "文件地址"


(10)Sqlmap 常用参数:

-u        (指定 url)

-r        (读取需要注入的 post 请求的文本)

-m        (批量跑 get 注入)

-p        (指定注入参数)

-current-db:        (获取当前数据库)

--table        (枚举数据库表)

--tamper        (使用过 waf 脚本)


(11)SQL注入防护方法:

(1)使用安全的 API

(2)对输入的特殊字符进行 Escape 转义处理.

(3)使用白名单来规范化输入验证方法.

(4)对客户端输入进行控制不允许输入SQL注入相关的特殊字符.

(5)服务器端在提交数据库进行SQL查询之前,对特殊字符进行过滤、转义、替换、删除

(6)规范编码,字符集.


(12)为什么参数化查询可以防止 SQL注入:

原理:

使用参数化查询数据库服务器 不会把参数的内容当作 SQL指令 来执行,是在数据库完成 SQL 指令的编译后才套用参数运行。

简单的说:

参数化能防注入的原因在于,语句是语句参数是参数参数的值并不是语句的一部分,数据库只按语句的语义跑。


(13)mysql 的网站注入 5.0 以上和 5.0 以下有什么区别:

5.0 以下没有 information_schema 这个系统表无法列表名等,只能暴力跑表名;

5.0 以下是多用户单操作5.0 以上是多用户多操作


SQL注入测试实战:Web安全:SQL注入漏洞测试(防止 黑客用此漏洞.)

SQL注入工具测试实战: Web安全 SQL注入漏洞 工具测试.

  

  

  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/731618.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

php,python aes加密反解

1. python版本 import base64 from Crypto.Cipher import AES from Crypto.Util.Padding import pad, unpadclass AESUtilCBC:def __init__(self, key, iv):self.key key.encode(utf-8)self.iv iv.encode(utf-8)self.pad_length AES.block_sizedef encrypt(self, data):try…

WPF文本绑定显示格式StringFormat设置-特殊格式时间日期和多数据绑定

WPF文本绑定显示格式StringFormat设置 特殊格式设置日期/时间使用系统默认样式自定义格式: 绑定多个属性(多重绑定)多重绑定中的特殊字符示例: 特殊格式设置 在Textblock等文本控件中,我们经常要显示一些日期和时间&a…

第3章 小功能大用处-发布订阅

Redis提供了基于“发布/订阅”模式的消息机制,此种模式下,消息发布者和订阅者不进行直接通信,发布者客户端向指定的频道(channel)发布消息,订阅该频道的每个客户端都可以收到该消息。 命令:Red…

AI落地不容乐观-从神话到现实

开篇 在这儿我不是给大家泼冷水,而是我们一起来看一下从2022年11月左右GPT3.0掀起了一股“AI狂潮”后到现在,AI在商用、工业、军用下到底有没有得到了大规模应用呢? 这个答案每一个参与者其实心里有数那就是:没有。 但是呢它的…

win10修改远程桌面端口号,在Windows 10中修改远程桌面端口号的步骤

在Windows 10中,远程桌面服务(Remote Desktop Services, RDS)允许用户从远程位置访问和操作计算机。默认情况下,远程桌面协议(RDP)使用端口3389进行通信。然而,出于安全考虑,管理员可…

时序预测 | Matlab基于CNN-BiLSTM-Attention多变量时间序列多步预测

目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab基于CNN-BiLSTM-Attention多变量时间序列多步预测; 2.多变量时间序列数据集(负荷数据集),采用前96个时刻预测的特征和负荷数据预测未来96个时刻的负荷数据&…

Mac安装多个jdk环境(jdk8+jdk17)保姆级

Mac安装多个jdk环境(jdk8jdk17)保姆级 背景:新机安装开发环境发现需要找很多文章,,,,这里一篇文章安装所有环境 文章目录 Mac安装多个jdk环境(jdk8jdk17)保姆级&#x1f…

异步FIFO

目录 描述 输入描述: 输出描述: 参考代码 描述 请根据题目中给出的双口RAM代码和接口描述,实现异步FIFO,要求FIFO位宽和深度参数化可配置。 电路的接口如下图所示。 双口RAM端口说明: 端口名 I/O 描述 wclk i…

微信小程序简易录音机

首先先创建一个项目&#xff08;想必大家都会啦那就直接开干&#xff09; 首先上html结构 <view class"wx-container"><view id"title">录音机</view><view id"time">{{hours}}:{{minute}}:{{second}}</view>&l…

锐捷统一上网行为管理与审计系统 static_convert.php 前台RCE漏洞复现

0x01 产品简介 锐捷统一上网行为管理与审计RG-UAC系列是星网锐捷网络有限公司自主研发的上网行为管理与审计产品,具备的上网行为日志审计功能,能够全面、准确、细致的审计并记录多种上网行为日志,包括网页、搜索、外发文件、邮件、论坛、IM等等,并对日志数据进行统计分析,…

React的服务器端渲染(SSR)和客户端渲染(CSR)有什么区别?

React的服务器端渲染&#xff08;SSR&#xff09;和客户端渲染&#xff08;CSR&#xff09;是两种不同的页面渲染方式&#xff0c;它们各自有不同的特点和适用场景&#xff1a; 服务器端渲染&#xff08;SSR&#xff09; 页面渲染: 页面在服务器上生成&#xff0c;然后将完整的…

USB2.0网卡安装驱动

有三种安装方式&#xff1a; 驱动精灵驱动总裁USB2.0网卡自带安装程序 前两种很简单&#xff0c;下载驱动精灵或者驱动总裁&#xff0c;然后检测本地硬件&#xff0c;安装相应驱动。 本文重点要介绍的是第三种&#xff0c;利用USB2.0网卡自带的安装程序。有的时候驱动精灵或…

数仓中数据分层的标准流向解读

在大数据开发中&#xff0c;数据分层是一个至关重要的概念。合理的数据分层可以有效地提升数据处理的效率和质量。本文将详细介绍数据分层的标准流向和相关注意事项&#xff0c;并结合实际应用进行说明。 数据分层的标准流向 根据行业标准&#xff0c;数据分层的标准流向如下…

js浅拷贝和深拷贝的区别

JavaScript中的浅拷贝和深拷贝的主要区别在于它们如何处理引用类型的数据。 浅拷贝仅复制对象的引用&#xff0c;而不复制对象本身。这意味着新旧对象共享同一块内存空间。因此&#xff0c;如果修改了原始对象&#xff0c;复制的对象也会相应地改变&#xff0c;因为它们实际上是…

Ant Design Vue Cascader 级联选择 错位问题

当Cascader 多个的时候 对应的下列会错位 如果滚动 他不会跟着元素 而是会跟着屏幕滚动&#xff0c;如下效果 解决方法 在Cascader 标题添加 getPopupContainer 属性监听对应的位置&#xff0c;返回对应的元素 <a-cascader class"smart-width-100 " v-model:…

民宿在线预订系统

摘要 随着国家的发展&#xff0c;人们也更加重视自己的业余时间。在特定的假期或休闲时间外出度假已逐渐成为这个时代的趋势。在我国&#xff0c;随着经济的发展和城市居民物质生活水平的提高&#xff0c;旅游业也呈现出越来越受欢迎的趋势。同时随着人口的快速流动&#xff0…

云计算之CDN

目录 一.什么是CDN&#xff1f; 二.使用CDN的好处&#xff1a; 三.主要特点&#xff1a; 四.关键功能&#xff1a; 一.什么是CDN&#xff1f; 1.CDN的全称是Content Delivery Network&#xff0c;即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和…

R语言——数据与运算

练习基本运算&#xff1a; v <- c(2,4,6,9)t <- c(1,4,7,9)print(v>t)print(v < t)print(v t)print(v!t)print(v>t)print(v<t) v <- c(3,1,TRUE,23i)t <- c(4,1,FALSE,23i)print(v&t)print(v|t)print(!v)v <- c(3,0,TRUE,22i)t <- c(1,3,T…

【NirCmd】一款强大的Windows命令行工具

简介 NirCmd 是一款由 Nir Sofer 开发的免费命令行工具&#xff0c;它允许用户通过简单的命令行选项执行各种任务&#xff0c;而无需打开任何图形用户界面。这款工具的功能覆盖了从系统设置调整到文件操作等多个方面&#xff0c;是系统管理员和高级用户自动化任务处理的得力助…