2022年4月6日校招面试题目准备
面试题目准备
- 自我介绍
- 各位面试官下午好,我是xxx,来自xxx,就读于信息安全专业,熟悉C、python语言,写过爬虫脚本,比如爬取表情包、爬取京东书籍数据、爬取QQ子域名、开发端口等脚本,学过sql注入、xss注入、渗透测试,熟悉linux系统,现在在自学go语言和html语言。担任三年学生干部,获得过国家励志奖学金、校一二等奖学金、xxx等奖项,参加过黑盾杯、虎符等CTF比赛,不过成绩不是很理想。
- 选择应聘安服的原因是感觉也自己的实力不知道在哪里,渗透也不知道怎么样,不知道从哪里开始,就看了网络的技术文章,决定就先从安服坐起。
- 我知道的安服职责:现场技术支持、漏洞扫描服务、安全加固服务、设备保障服务、应急响应这些
- 1、http的无状态体现在什么地方?
- 无状态是指,当浏览器发送请求给服务器的时候,服务器响应,但是同一个浏览器再发送请求给服务器的时候,他会响应,但是他不知道你就是刚才那个浏览器,简单地说,就是服务器不会去记得你,所以是无状态协议。
- 2、渗透测试的思路?
- 信息收集:
- 服务器的相关信息(ip、版本号、开发的端口、WAF等等)
- 网站指纹识别(cms、cdn)
- whois信息、子域名、旁站、C段等等这些
- 旁站指的是同一服务器上的其他网站
- C段指的是同一内网段内的其他服务器
- 中间件版本,是否有exp可以利用
- 传输协议、github源码
- 漏洞挖掘:
- 浏览网站、看看规模、功能架构、网站特点
- 端口扫描、弱口令,对开放响应的端口进行漏洞探测,如mysql、ftp、ssh、心脏滴血、rsync
- XSS、sql注入、文件上传、命令注入、CSRF、cookie安全检测、暴力破解、越权访问、目录遍历、文件包含、重放攻击、然后使用漏扫工具(AWVS/NESSUS)
- 漏洞利用和权限提升
- MYSQL提权、linux脏牛提权、后门提权
- 清除测试数据&写渗透测试报告
- 日志:测试数据的清理
- 总结:渗透测试报告
- 复测
- 验证是否有新漏洞
- 信息收集:
- 3、OWASP TOP 10?
- 第一个是失效的访问控制
- 第二个是加密机制失效
- 第三个是注入漏洞
- 第四个是不安全设计
- 第五个安全配置错误
- 第六个是使用过时或者自带缺陷的组件
- 第七个是身份识别和身份验证错误
- 第八个是软件和数据完整性故障
- 第九个是安全日志和监控故障
- 第十个是服务端请求伪造
- 4、说说你对奇安信的了解
- 奇安信是国内网络安全一哥,主要做网络安全,技术能力在IT中都是大佬级别,2022年冬奥会和冬残会值守,实现零事故的承诺,拥有国内短号95015
- 我知道的奇安信的产品有网神安全分析与管理系统,还有贵公司的“让网络更安全、让世界更美好”的企业使命,愿景是成为全球第一的网络安全公司
- 5、sql的报错注入原理
- 在注入过程中根据错误回显进行判断,
- 根据执行效果分类
- 报错注入
- 布尔盲注
- length、substr、database、mid、ascii、if、
- 时间盲注
- 根据注入点类型分类
- 数字型
- union联合查询
- 堆查询
- 宽字节
- 字符型
- 搜索型注入
- 根据数据提交方式来分类
- GET注入
- POST注入
- cookie注入
- HTTP头部注入
- 数字型
- 6、sqlmap常用参数
- -p 指定测试参数
- -b 获取banner
- --dbs 列举数据库
- --is-dba 是否是管理员权限
- --current-db 当前数据库
- --current-user 当前用户
- --tables 列举数据库的表名
- --count 检索所有条目数
- --columns 获取表的列名
- --dump 获取表中的数据,包含列
- 7、文件上传绕过
- 1 前端修改允许的类型
- 2 burp抓包修改
- 客户端 javascript 检测
- burp抓包修改Content-Type: 为允许的字段
- Content-Type: image/gif
- Content-Type: image/png
- Content-Type: image/jpeg
- 服务端MIME类型检查
- 1 文件名大小写绕过
- 用像 AsP,pHp 之类的文件名绕过黑名单检测
- 2 名单列表绕过
- 用黑名单里没有的名单进行攻击,比如黑名单里没有 asa 或 cer 之类
- 3 特殊文件名绕过
- 比如发送的 http 包里把文件名改成 test.asp. 或 test.asp_(下划线为空格),这种命名方式
- 在 windows 系统里是不被允许的,所以需要在 burp 之类里进行修改,然后绕过验证后,会被 windows 系统自动去掉后面的点和空格,但要注意 Unix/Linux 系统没有这个特性。
- 4 htaccess 文件
- 配合名单列表绕过,上传一个自定义的.htaccess,就可以轻松绕过各种检测
- 5 写入方法
- 首先名字为1.php:jpg,会写入一个1.php的空文件,然后再上传一个文件,然后修改名字为3.<<<
- 这样就会把我们这个文件的内容写入到我们上传的那个1.php空文件中
- 1 文件名大小写绕过
- 6、%00截断绕过上传
- 1.php .jpg 空格二进制20改为00
- 还有一些图片木马之类的,需要结合文件包含漏洞来解析。
- IIS解析漏洞
- 1. 目录解析
- 以*.asp命名的文件夹里的文件都将会被当成ASP文件执行。
- 2. 文件解析
- *.asp;.jpg 像这种畸形文件名在“;”后面的直接被忽略,也就是说当成 *.asp文件执行。
- apache解析漏洞
- 从右开始往左解析,如果为不可解析,继续往左解析
- nginx解析漏洞
- 原理
- 对任意文件名,在后面添加/任意文件名.php的解析漏洞,比如原本文件名是test.jpg,可以添加为test.jpg/x.php 进行解析攻击。
- 对低版本的Nginx可以在任意文件名后面添加%00.php进行解析攻击。
- Nginx下,请求文件/shell.gif时在后面加个*.php,即/shell.gif/1.php,可能会被当作PHP代码执行。
- 和Apache一样,Nginx也是通过mime.types识别文件。
- 文件在/etc/nginx/mime.types
- 修复建议
- 上传文件的存储目录禁用执行权限
- 文件的后缀白名单,注意0x00截断攻击
- 不能有本地文件包含漏洞
- 及时修复web上的代码
- 升级web server
- 8、windows查看进程、结束进程
- 查看所有进程 netstat -ano 或者 tasklist
- 结束进程 taskkil /t 强制杀死
- 9、linux查看文件命令
- cat
- head -n 100 filename:文件前100
- tail -n 100 filename:文件尾部100行
- 10、linux中查看系统中指定后缀的文件,并以管理员身份运行
- find命令 -type
- ls
- 11. 什么是java序列化与反序列化?
- Java 序列化是指把 Java 对象转换为字节序列的过程,以便于保存在内存、文件、数据库中,ObjectOutputStream类的 writeObject() 方法可以实现序列化。
- Java 反序列化是指把字节序列恢复为 Java 对象的过程,ObjectInputStream 类的 readObject() 方法用于反序列化。
- 12、熟悉的语言(python),用python写过爬取网络表情包、QQ子域名、京东书籍数据、数据库账号密码暴力破解脚本,使用过的python库(pandas、request、re、time)
- from selenium import webdriver
- import requests
- import time
- import os
- 13.XSS介绍及原理:跨站脚本攻击
- XSS又叫CSS(Cross Site Script),跨站脚本攻击。它指的是恶意攻击者往Web页面里插入恶意JS代码,当用户浏览该页之时,嵌入其中Web里面的JS代码会被执行,从而达到恶意的特殊目的。利用我们所知道的各种黑魔法,向Web页面插入JS代码,让JS代码可以被浏览器执行,访问该页面的用户则被攻击。
- XSS漏洞分类
- 1.反射型
- 非存储型,就是通过get或者post请求时,被后端处理过数据,并且响应到前端页面上
- 2.存储型
- XSS代码被存储到服务器上的数据库里的某张表的字段里,或者页面,或者某个上传文件里
- 3.DOM型
- XSS漏洞修复方法
- 1.HTML实体编码
- 2.使用白名单过滤掉用户输入的恶意字符
- 3.根据业务场景对症下药
- 14、csrf跨站域请求伪造攻击
- 攻击者盗用了你的身份,以你的名义发送恶意请求。CSRF能够做的事情包括:以你名义发送邮件,发消息,盗取你的账号,甚至于购买商品,虚拟货币转账......造成的问题包括:个人隐私泄露以及财产安全。
- SSRF是服务器对用户提供的可控URL地址过于信任,没有经过严格检测,导致攻击者可以以此为跳板攻击内网或其他服务器。
- 15、常见的端口和协议
- (1)FTP——文件传输协议——21号端口
- ssh 协议端口号 22
- (2)Telnet——远程登陆协议——23号端口
- (3)SMTP——简单邮件传送协议——25号端口
- (4)POP3——接收邮件——110号端口
- (POP3仅仅是接收协议,POP3客户端使用SMTP向服务器发送邮件。)
- 使用UDP协议常见端口主要有以下几种:
- (1)HTTP——超文本传输协议——80号端口
- (2)DNS——域名解析服务——53号端口
- (3)SNMP——简单网络管理协议——161号端口
- (SMTP真正关心的不是邮件如何被传送,而只关心邮件是否能顺利到达目的地。)
- (4)TFTP——简单文件传输的协议——69号端口
- 另外代理服务器常用以下端口:
- (1)HTTP协议代理服务器常用端口:80/8080/3128/8081/9080
- (2)SOCKS代理协议服务器常用端口:1080
- (3)FTP协议代理服务器常用端口:20/21
- (20端口用于数据传输,21端口用于控制信令的传输,控制信息和数据能够同时传输,这是FTP的特殊这处。FTP采用的是TCP连接。)
- (4)Telnet协议代理服务器常用端口:23
- (5)DHCP协议——动态主机设置协议——用于内部网或网络服务供应商自动分配IP地址
- DHCP:服务器端的端口号是67
- DHCP:客户机端的端口号是68
- 16、osi七层模型
- 应用层
- 表示层
- 会话层
- 传输层
- 网络层
- 数据链路层
- 物理层
- 17、XSS漏洞和防范
- 反射型,存储型,dom型(特殊的反射型)
- 反射型XSS:<非持久化> 攻击者事先制作好攻击链接, 需要欺骗用户自己去点击链接才能触发XSS代码
- 存储型XSS:<持久化> 代码是存储在服务器中的,每当有用户访问该页面的时候都会触发代码执行。
- DOM型XSS:通过修改页面的DOM节点形成的XSS,称之为DOMBasedXSS。
- 防范方法:过滤关键词和符号,对<>等进行转义,对重要cookie实行httponly等
- 18、给你一个用户登录框如何进行渗透测试:
- 先尝试万能密码,看有没sql注入漏洞,弱密码,观察有没有用户注册或者忘记密码,如果有可以测试有没有重置密码,或者注册后改包用户名登录等逻辑漏洞,(部分网站也可以考虑xss)如果什么发现都没有尝试暴力破解,总之思路是先挖掘web和逻辑漏洞,最后再暴力破解。
- 19、列举常见的逻辑漏洞:
- 就用户而言,登录爆破,任意账号注册,密码重置,水平越权和垂直越权等
- 商场或者交易:修改购买金额,单价,数量等
- 就用户而言,登录爆破,任意账号注册,密码重置,水平越权和垂直越权等
- 20、爬虫中经常用到的几个库
- requests ; BeautifulSoup ; lxml ;selenium 爬虫框架 Scrapy
- 21、php反序列化
- php反序列化的时候,反序列化的内容是用户可控,那么恶意用户就可以构造特定序列化内容的代码,通过unserialize()函数进行特定的反序列化操作,并且程序的某处存在一些敏感操作是写在类中的,那么就可以通过这段恶意代码,达到执行攻击者想要的操作。
- 22、LINUX下用户密码存放在哪里
- /etc/passwd和/etc/shadow
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~