1.SQL注入漏洞产生的原因是?
前端传到后端的数据,没有经过任何处理,直接当作sql语句的一部分来执行
2.讲一下sql注入,写入webshell需要哪些前提条件
开启导入导出权限secure-file-priv
站点根目录位置/路径
mysql用户对站点根目录有写入权限
3.布尔盲注和时间盲注的区别是什么?
布尔盲注:两个页面,一个正确页面,一个错误页面
时间盲注:只有一个页面
注入效率,适用范围
4.防御sql注入有哪些方法?
a.结构化查询,mysql预处理/预编译
b.过滤关键字
c.使用waf拦截
5.xss漏洞产生的原因是?
前端传到后端的数据,没有做编码处理,变成html一部分来解析执行
6.xss反射型和存储型的区别?
反射型:临时的,危害相对小一些
存储型:永久的,危害相对大一些
7.防御xss漏洞有哪些方法
html实体编码
过滤关键字 script on href javascript
配置csp策略
配置http-only
8.渗透一个陌生的网站,需要收集哪些信息?
收集真实ip
开放的端口号
web中间件 php/asp/jsp
指纹信息:cms/框架
9.遇到有cdn的网站,如何绕过cdn获取真实ip?
国外ping
dns历史解析记录
带www和不带www都ping一下
旁站和C站,host碰撞
类似phpinfo的敏感信息泄露
10.文件下载漏洞有哪些危害?
下载源代码,下载系统文件
11.文件包含漏洞有哪些危害?
获取webshell,查看源代码文件,查看系统文件
12.shiro 框架的特征是?
cookie:remember字段
java -jar ysoserial-master-30099844c6-1.jar CommonsBeanutils1 “touch /tmp/success” > poc.ser
利用链:一些类和函数
13.写三条 xss 漏洞的防御方法
html实体编码
响应头添加csp
给cookie添加http-only
过滤和替换一些关键字 onerror onload onclick ( (
14.写出 15 个常见服务的端口号
telnet 23 不加密。明文
ssh 22 加密
ftp 21
https 443
smb 445
sameb
dns 53
rdp 3389
vnc 5900
smtp 25 发邮件
pop3
15.写出五个可以读取任意文件的漏洞名称
sql注入
文件下载
文件包含
ssrf
xxe
16.写出三个漏洞可以直接获取 webshell 的漏洞?
sql注入
文件上传
文件包含
ssrf
17.什么是序列化?什么是反序列化?
按照一定约定进行存储,保存
按照一定约定进行还原,读取
18.哪些漏洞没有回显的时候,可以使用 dnslog 外带注入
sql注入
xxe
rce
ssrf
19.写出 10 个常见中间件和数据库服务的默认端口号
mysql 3306
pgsql 5432
oracle 1521
mssql/sql server 1433
redis 6379
mongodb 27017
nginx 80
apache 80
iis 80
tomcat 8080
weblogic 7001
jboss 8080
20.如何防暴力破解漏洞
提供密码复杂度
增加验证码
限制爆破次数,设置锁定时长