网络安全最全面试题(1)(网络安全面试题库)

网友投稿 435 2022-10-02


网络安全最全面试题(1)(网络安全面试题库)

SQL注入的原理是什么?

SQL注入攻击是通过将恶意构造的SQL语句插入到应用的输入参数中,再到后台SQL服务器上解析执行的一种攻击方式。

SQL注入产生的原因是什么?

程序开发过程中未注意规范书写SQL语句,并且未对输入参数进行过滤。

MySQL注入,写入一句话木马需要什么条件?

使用into outfile把木马写入web目录拿到webshell需要以下几个条件:1.拿到的mysql用户拥有file_priv权限(show global variables like '%secure%'查看)2.对web目录有写权限3.知道系统物理路径(需要into outfile ('路径'))

SQL注入的流程是什么?

1.判断注入点(通过扫描器,单引号,特殊符号等)2.确定注入方式(字符型,数字型,报错注入等)3.确定数据库类型4.依次爆出库名-->表名-->列名-->数据5.得到有用的数据进行利用

常见的web中间件有哪些?

1.IIS2.Apache3.Nginx4.Tomcat5.Jboss

MySQL注入,5.0以上和5.0以下有什么区别?

Mysql5.0以后默认添加了一个information_schema的数据库,该数据库中的表都是只读的,不能进行删除,更新,插入等操作。但它记录了数据库中所有的库名、表名、列名等重要信息。information_schema.schemata:存储了数据库中所有数据库的库名information_schema.tables:存储了数据库中所有表的表名information_schema.colums:存储了数据库中所有列的列名

SQL注入的种类都有哪些?

1.按照注入点数据类型分:

数字型 字符型

2.按照数据传参方式分:

get型 post型 header头部注入(UA、COOKIE等)

3.按照注入方法分:

union注入 布尔盲注 时间盲注 报错注入 二次注入 宽字节注入

什么是宽子节注入?

主要利用mysql在使用GBK编码时,会人为两个字符是一个汉字的特性,在转义单引号(0x27)的时候,如果加了过滤转义符号/(0x5c),我们可以利用GBK编码在/前加0xdf或者其他可以组成汉字的十六进制字符组成一个汉字(df5c)从而将单引号逃逸出来的注入方式。

宽子节注入如何防御?

1.数据库使用utf-8编码2.使用gbk编码的修补方案:

使用mysql_set_charset(GBK)指定字符集 使用mysql_real_escape_string进行转义

原理:mysqlmysql_real_escape_string与addslashes的不同之处在于其会考虑当前设置的字符集,不会出现前面df与5c拼接为一个宽字节问题。当前字符集需要使用mysql_set_charset进行指定。这两个添加缺一不可。

什么是二次注入?

在存入数据库的时候做了过滤,但是在取数据的时候没有做过滤,从而产生的注入方式。

SQL注入如何写入shell?

1.利用mysql的into outfile写入webshell2.利用sqlmap的--os-shell方式写入webshell

SQL注入如何防御?

1.SQL预编译2.严格限制参数类型,只能为数字3.加入黑白名单4.转义特殊字符5.使用WAF

SQL注入如何绕过WAF?

1.大小写、双写绕过2.替换关键字3.使用编码4.使用注释5.使用等价函数与命令6.使用特殊符号7.填充垃圾数据


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:网络安全常用武器分享 第二期(泄露扫描)
下一篇:一篇文章带了解如何用SpringBoot在RequestBody中优雅的使用枚举参数
相关文章

 发表评论

暂时没有评论,来抢沙发吧~