目录
面经
牛客
奇安信面经(五星推荐)
牛客面经(推荐)
渗透测试面经(推荐)
渗透测试技巧
计网面经
SQL注入漏洞
注入绕过
XXE漏洞
最强面经
Github面经
模拟面
WEB安全
PHP安全
网络安全
密码学
一、青藤
二、360
三、漏洞盒子
四、未知厂商
五、长亭-红队
六、qax
七、天融信
八、安恒
九、长亭
十、国誉网安
十一、360-红队
十二、天融信
十三、长亭-2
十四、360-2
十五、极盾科技
十六、阿里
十七、长亭3
十八、qax-红队
hw临近,每到这时都是换业高峰期,整理一波面经请各位师傅过目。
可以看牛客和GitHub一些师傅整理的
https://www.nowcoder.com/discuss/tag/851
阿里、字节:https://www.nowcoder.com/discuss/772753
58同城安全工程师:https://www.nowcoder.com/discuss/768729
深信服漏洞研究工程师:https://www.nowcoder.com/discuss/746746
金山云安全攻防工程师:https://www.nowcoder.com/discuss/775683
阿里高德事业群安全工程师:https://www.nowcoder.com/discuss/801094
30多个分部门:https://www.nowcoder.com/discuss/765224
深信服22届校招-漏洞研究工程师:https://www.nowcoder.com/discuss/793352
多看看别人的面经,不同岗位的侧重点不太一样
优先推荐 牛客网
一些公开的面经
https://github.com/d1nfinite/sec-interview
https://github.com/tiaotiaolong/sec_interview_know_list
https://github.com/Leezj9671/Pentest_Interview
https://github.com/Leezj9671/Pentest_Interview/blob/master/%E9%83%A8%E5%88%86%E9%9D%A2%E8%AF%95%E9%97%AE%E9%A2%98%E8%AE%B0%E5%BD%95.md
https://github.com/Leezj9671/offensiveinterview
https://4o4notfound.org/index.php/archives/183/
http://yulige.top/?p=685
https://mp.weixin.qq.com/s?__biz=MzU4ODU1MzAyNg==&mid=2247486560&idx=1&sn=d5d25e4d115f006b281efcaf4422f0a8&scene=21#wechat_redirect
https://mp.weixin.qq.com/s?__biz=MzI5MDQ2NjExOQ==&mid=2247485451&idx=1&sn=b2fe54aa3af3bb8c845620675367f2bd&scene=21#wechat_redirect
https://www.yuque.com/feei/sig
https://www.bilibili.com/read/cv5675359/
https://www.nowcoder.com/discuss/205497?channel=-1&source_id=profile_follow_post_nctrack
https://www.nowcoder.com/discuss/322628?channel=-1&source_id=profile_follow_post_nctrack
https://www.nowcoder.com/discuss/540327?channel=-1&source_id=profile_follow_post_nctrack
https://www.nowcoder.com/discuss/392179?channel=-1&source_id=profile_follow_post_nctrack
https://www.nowcoder.com/discuss/368346?channel=-1&source_id=profile_follow_post_nctrack
https://www.nowcoder.com/discuss/359173?channel=-1&source_id=profile_follow_post_nctrack
https://www.nowcoder.com/discuss/324649?channel=-1&source_id=profile_follow_post_nctrack
https://github.com/Prodject/BurpSuite-collections/blob/master/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95%E9%9D%A2%E8%AF%95%E9%97%AE%E9%A2%982019%E7%89%88.md
https://www.cnblogs.com/OpenCyberSec/p/11042982.html
https://blog.csdn.net/Alexz__/article/details/105039024
https://bbs.pediy.com/thread-224874.htm
https://github.com/xiaoy-sec/Pentest_Note
https://github.com/Power7089/PenetrationTest-Tips
https://www.cnblogs.com/zyf-zhaoyafei/p/4716297.html
https://blog.csdn.net/xp178171640/article/details/104593067
https://blog.csdn.net/qq_41880069/article/details/82799799
https://blog.csdn.net/qq_41420747/article/details/81836327?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.baidujs&dist_request_id=&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.baidujs
https://www.cnblogs.com/cHr1s/p/14389191.html
https://www.freebuf.com/articles/web/229982.html
https://www.freebuf.com/vuls/194112.html
https://www.freebuf.com/articles/network/225780.html
渗透测试面试问题大全
https://github.com/Leezj9671/Pentest_Interview
https://github.com/Qing-Q/Penetration-Testing
https://github.com/1yuhao/pentest_Interview_question
https://github.com/yaunsky/GetOffer
https://github.com/wfl123/Penetration_interview_questions
https://github.com/EvilAnne/Pentest_questions/blob/master/%E6%B8%97%E9%80%8F%E7%AF%87.md
自我介绍
你在hw中的工作
怎么发现有没有被攻击
一台主机被钓鱼,如何排查其他主
有无了解过域前置和云函数的转发
遇到的比较有意思的渗透
怎么做信息收集
扫目录用的工具
域名的收集
oneforall的代码有没有看过
端口扫描怎么做
tcp的三次握手
无状态扫描
无状态扫描是会省略TCP握手的哪一步
getshell的方式
文件上传遇到白名单(00截断之外的)
sql注入过滤逗号(from..for offest的语句)
宽字节注入原理
时间盲注ban掉了sleep函数,有哪些可以替换(笛卡尔积、benmark还有其他的)
时间盲注服务器回显比较慢,可以用什么解决
mysql的一个艾特@和两个@@有什么区别
sql注入绕waf的方法
ssrf原理及绕过及修复
审计时候可能会存在ssrf的函数
curl支持的协议
CRLF漏洞
什么是同源策略
怎么绕过同源策略
jsonp怎么跨域,跨域的原理
前端函数如document可以跨域吗
jsonp用哪个标签可以实现跨域
jsonp跨域造成的安全问题
CORS哪个响应头是允许跨域的
CORS和jsonp的相同和不同
allow-origin:a.com的话允许b.a.com跨域吗
xss的漏洞原理及分类
xss出现的位置
DOM型xss形成的原因
反射型dom xss形成的原因
DOM型xss在审计中关注的重点
有没有了解过突变性XSS
xss的修复方式
有一个xss输出在href标签里面应该怎么办以及怎么修复
什么是CSP(内容安全策略)
如果你拿到一个jsonp漏洞你会怎么利用
http的请求方式
get和option的区别
xxe原理以及能干什么
怎么判断是否存在xxe漏洞
xxe的content-type应该是什么
对JAVA有了解吗
tp5的一个调用链
白盒审计过的漏洞
有没有内网渗透的经验,学习过哪些内容
内网渗透大概的攻击思路
提权的方式
Windows的权限维持
Linux的隧道搭建
DNS隧道和SMB隧道有没有了解过
横向移动的方式
有没有做过钓鱼有没有做过免杀类的钓鱼
钓鱼exe遇到杀毒软件怎么办
内网中比较脆弱的系统
你在学校的攻防演练都干了什么,有什么成果
不出网的话怎么办
域内的攻击方式(约束委派等)
黄金票据和白银票据的区别
内网KDC服务器开放在哪个端口
Windows在应急响应中的安全日志以及对应场景
获取了不在域的主机,怎么快速发现域
你在CTF中的方向
phpinfo会关注什么点
怎么绕diesabled_function
有没有写过免杀的webshell(颜文字、jsfuck等)被提问:这不是前端的
有没有写过绕安全狗的webshell
绕过cdn查找真实ip
反序列化漏洞的成因
反序列化的利用链(开源项目php+ggc)
越权漏洞形成的原因
编程怎么样
框架防sql注入
pdo预处理了解吗
java主流漏洞了解过吗,复现过吗
给一个域名,如何进行渗透测试(信息搜集、漏洞挖掘、漏洞利用)
水平越权、垂直越权、交叉越权
sql注入中逗号过滤如何bypass
发现延时注入,关键函数被过滤,如何绕过及fuzz
使用笛卡尔积考虑造成的安全情况
xss常见绕过方式
xss的危害
csrf原理
csrf危害
jsonp劫持了解吗,说一下原理
什么是跨域,跨域的原理,跨域造成的安全问题
cors
ssrf了解吗,攻击内网post ssrf没有回显怎么办
ssrf打内网redis了解吗,具体流程
ssrf的危害,对服务器本身,除了常见
文件包含在php中除了getshell还有那些利用方式
PHP代码审计,反序列化原理
php哪些魔术方法可以造成反序列化
审计过哪些cms,发现了哪些漏洞
有没有独立审计cms0day
有过对app的测试吗
内网渗透了解吗
mysql的提权方法
mof提权了解过吗
osi七层模型
交换机在哪一层
路由器呢
在内网渗透中如何横向移动
pth基于哪个端口445,用了什么协议smb
进入内网之后第一件事干什么
如果在域内怎么办
找域控的方法
令牌伪造的原理
黄金票据是哪个协议存在的安全问题
内网中域认证的协议
黄金票据的伪造原理 详细一点
黄金票据存储在哪,存储介质是什么 内存
排除关掉服务器这些,如何删除黄金票据
代理转发发现3389不出网怎么解决
linux、windows下权限维持方法
有一台机器已经提权到system权限,知不知道一个方法不需要登录3389直接登录
上传绿色版的teamviewer
免杀了解吗
常见的免杀方式
sqlmap的计算函数,说会操作,不要说了解,要不然会问底层开发
phpmyadmin getshell 写日志
tp框架中的权限维持
ddos应急思路,应急响应
httponly
逻辑漏洞,任意密码重置思路,发验证码,点发送验证码之后生成session,第二次发重新获取之后session被覆盖,
OWASP Top 10(2017)
Injection - 注入攻击
例如 SQL、NoSQL、OS 和 LDAP 注入,当不受信任的数据作为命令或查询的一部分发送到解释器时就会发生。攻击者的恶意数据可以诱使解释器执行非预期的命令或在未经适当授权的情况下访问数据。
本文只写了SQL注入攻击
过滤了select怎么注入?
盲注 但是只能注入当前表
如果可以堆叠注入的话,可以赋值变量为16进制
mysql不知道列名怎么爆字段?
查询information_schema表。
追问,这个表无权访问怎么办?
利用union查询,进行查询时语句的字段数必须和指定表中的字段数一样,不能多也不能少,不然就会报错,例如:Select 1,2,3 union select * from xxx; (xxx表有三列),结果为三列。
mysql报错注入常用的函数及原理?
1.XML类
extractvalue() 对xml文档查询,报错原理与updatexml相同
updatexml(1,concat(0x7e,(SELECT @@version),0x7e),1) 对xml文档修改
第一个参数:XML_document是String格式,为XML文档对象的名称,文中为Doc
第二个参数:XPath_string (Xpath格式的字符串) ,Xpath即为xml文档中的路径表示方法(标签即视为路径),有点类似于linux文件系统的路径表示
第三个参数:new_value,String格式,替换查找到的符合条件的数据
语句中,concat返回的路径不符合Xpath格式,所以报XPATH syntax error的错
2.floor()+rand()+group by
向下取整
select count(),(concat(floor(rand(0)2),(select version())))x from table1 group by x;
group by会产生虚拟表,floor(rand(0)*2)产生0或1,导致虚拟表主键重复,产生报错
3.exp() 溢出
id=1 and exp(~(select * from(select user())a)),利用exp溢出、取反~、子查询。
基于exp溢出的sql报错注入
几何函数
geometrycollection(),multipoint(),polygon(),multipolygon(),linestring(),multilinestring()
例如,id=1 and linestring((select * from(select * from(select user())a)b))
宽字节注入原理?
宽字节是在一些特定的编码,如GBK中才有的,编码将两个字节认为是一个汉字(前一个字符ascii码要大于128,才到汉字的范围)。PHP的addslashes函数为了防止sql注入,将传入参数值进行转义,将' 转义为\',单引号失去作用。因此,我们需要将\给绕过,这样才可以加'号。
pdo防sql注入原理?
参数化查询:变量和SQL模板分两次发送,预编译已经产生了词法分析树,再传参不会修改语义。
预编译select a from b where c = ? and d = ? 再传递变量进去
通过sql注入写webshell导致RCE?
select … into outfile 'filename'
例如
select into outfile xxx
具有文件读写权限,写入的文件所在目录有执行权限才可以。
sqlmap的使用模式和支持的数据库?
BEUSTQ,布尔盲注、错误、联合、堆叠、时间、内联
支持数据库:MySQL,Oracle,PostgreSQL,Microsoft SQL Server,MicrosoftAccess, IBM DB2,SQLite,Firebird,Sybase和SAP MaxDB
limit 后怎么注入?
procedure analyse()这个子查询,利用extractvalue ,BENCHMARK等函数
参考:MySQL 在 LIMIT 条件后注入 - 情三 - 博客园
Broken Authentication-失效的身份认证
与身份验证和会话管理相关的应用程序功能经常被错误地实现,允许攻击者破坏密码、密钥或会话令牌,或利用其他实现缺陷来暂时或永久地假设其他用户的身份。
例如:token不够随机,可预测
Sensitive Data Exposure-敏感数据泄露
许多 Web 应用程序和 API 没有正确保护敏感数据,例如金融、医疗保健。攻击者可能会窃取或修改此类保护不力的数据,以实施信用卡欺诈、身份盗用或其他犯罪活动。敏感数据可能会在没有额外保护的情况下受到损害,例如静态或传输中的加密,并且在与浏览器交换时需要特殊的预防措施。
例如,查看他人信息的API,身份证号在前端加了*,导致可以在流量中获取完整身份证号,导致密码为生日的用户被攻击。
XXE-XML 外部实体
许多旧的或配置不当的 XML 处理器评估 XML 文档中的外部实体引用。外部实体可用于使用文件 URI 处理程序、内部文件共享、内部端口扫描、远程代码执行和拒绝服务攻击来公开内部文件。
简述一下XXE漏洞产生的原理,针对PHP和JAVA,XXE分别可以进行哪些恶意利用?
服务端接收并解析了来自用户端的xml数据,而又没有做严格的安全控制,从而导致xml外部实体注入。
图片来源: https://xz.aliyun.com/t/3357#toc-8
Broken Access Control-无效的访问控制
对经过身份验证的用户可以做什么的限制通常没有得到正确执行。攻击者可以利用这些缺陷来访问未经授权的功能和数据,进而越权,例如访问其他用户的帐户、查看敏感文件、修改其他用户的数据、更改访问权限等。
Security Misconfiguration-安全配置错误
安全配置错误可以发生在一个应用程序堆栈的任何层面,包括平台、Web服务器、应用服务器、数据库、框架和自定义代码。开发人员和系统管理员需共同努力,以确保整个堆栈的正确配置。自动扫描器可用于检测未安装的补丁、错误的配置、默认帐户的使用、不必要的服务等。
XSS-跨站脚本攻击
XSS漏洞的防御策略?
前端过滤字符,后端白名单(例如,CSP)只允许固定的标签,设置http-only,防止cookie被读取。
DOM型XSS和一般的XSS区别?
基于文档对象模型(Document Object Model,DOM)的一种漏洞,在JavaScript脚本动态执行的过程中产生的。
存储型xss在纯内网的环境中,可以怎么利用?
xss本质上是任意代码执行,不要仅限于弹cookie,知名的XSS框架beef可以参考一下,xss可以修改网站页面,甚至可以扫描端口,如果你也在内网,可以嗅探密码等等。
react native框架中的xss?
JSON.stringfy将JavaScript对象转化为了JSON字符串,然后以全局变量的方式插入到了页面中,所以传的字符串有问题,可能会产生这个问题。
Insecure Deserialization-不安全的反序列化
不安全的反序列化通常会导致远程代码执行。即使反序列化缺陷不会导致远程代码执行,它们也可用于执行攻击,包括重放攻击、注入攻击和提权攻击。
Using Components with Known Vulnerabilities-使用已知漏洞的组件
组件(例如库、框架和其他软件模块)以与应用程序相同的权限运行。如果利用易受攻击的组件(如structs 2),此类攻击可能会导致严重的数据丢失或服务器接管。使用具有已知漏洞的组件的应用程序和 API 可能会破坏应用程序防御并引发各种攻击和影响。
Insufficient Logging & Monitoring-日志和监控不足
日志记录和监控不足,再加上与事件响应的集成缺失或无效,使攻击者能够进一步攻击系统,保持持久性,转向更多系统,并篡改、提取或破坏数据。大多数违规研究表明检测违规的时间超过 200 天,通常由外部方而不是内部流程或监控检测到。
OWASP Top 10 (2013及之前版本)
这里补充一下和2017不同的几个
不安全密码存储
对重要信息不进行加密处理或加密强度不够,或者没有安全的存储加密信息,都会导致攻击者获得重要信息。此风险还涉及Web应用以外的安全管理。
例如,2011年某博客网站被拖库,密码使用明文存储。
不安全的对象引用
指一个已经授权的用户,通过更改访问时的一个参数,从而访问到了原本其并没有得到授权的对象。Web应用往往在生成Web页面时会用它的真实名字,且并不会对所有的目标对象访问时来检查用户权限,所以这就造成了不安全的对象直接引用的漏洞。
例如,不进行鉴权时,抓包修改可能导致访问未授权链接,例子。
限制URL访问失败
这个漏洞也是与认证相关的,这种漏洞具体是指在系统已经对url的访问做了限制的情况下,但这种限制并没有生效。常见的例子是系统没有对用户进行角色的检查,以及用户通过修改URL的action并指向未被授权页面就能访问该页面。
缺乏传输层保护
是一种缺少了对敏感数据保护的漏洞,不同在于这种漏洞更多关注的是数据在网络上的传输,造成这个漏洞的原因往往如下:
未能识别所有的敏感数据;
未能识别敏感数据发送的所有位置;
未能在每个位置对敏感数据提供合理的保护
例如,某网站使用http而不是https。
未验证的重定向或跳转
在Web应用中重定向是极为普通的,并且通常重定向所引发的目的是带有用户输入参数的目的url,而如果这些重定向未被验证,那么攻击者就可以引导用户访问他们想要用户访问的站点
同样,转发也是极为普遍的,本质上转发是在同一个应用中对一个新页面发送请求,并且有时是用参数来定义目标页面的。同样,如果参数未被验证,那么攻击者就可以利用其来绕过认证或是授权检查。
危害如下:
攻击者通过重定向可以试图安装恶意软件或诱使受害人泄露密码等敏感信息,通过转发可以绕过访问限制
如何防范:
1.避免使用重定向和转发
2.如果使用了,不要在确定目标时涉及到用户参数
3.如果无法避免使用用户参数,则应确保目标参数值对于当前用户是有效的并已授权
CSRF-跨站伪造请求
CSRF的原理是什么?
构造链接,在自己的网站或邮箱等引诱已登录用户进行点击等操作,进而修改用户信息,如用户的头像、发货地址等。更有甚者,可能执行恶意操作,比如修改密码、添加/删除好友或者点赞/转发/评论/私信。
注:攻击者不能获取信息,因为是浏览器发送请求给网站服务器。
如果是post请求如何攻击?
隐藏form表单,自动提交
没有表单,只是post请求呢?
ajax发送post请求
如何防范CSRF?
referer检测
添加token
二次验证
会话认证管理缺陷
身份认证和会话管理常见安全问题
账号或密码未做限制, 可暴力猜解。没有限制登录次数,加验证码
弱密码策略, 允许简单密码存在, 如123456 , admin
密码找回方案存在缺陷, 如: 密保问题设计
密码更改方案存在缺陷
cookie 作为认证凭证, 携带敏感信息
Sessionid 没有时效限制, 特别是单点登录令牌在用户注销时没有失效
成功注册后, 会话ID 没有轮转。
sessionid 和其他认证凭据使用未加密连接传输。
混用个性化数据的身份验证数据,个性化数据适于永久的cookie,而身份验证cookie不应是永久的
认证会话管理洞防御
设置验证码, 防止暴力猜解
强制复杂密码策略, 不允许默认弱密码存在
身份认证采用多因素认证或强身份认证
认证cookie 中,加入两个时间, 一个是“ 即使一直在活动,也要失效" 的时间,一个是“ 长时间不活动的失效时间"
cookie设置http-only, 防止脚本读取
cookie 设置Secure, 只允许https传输
网络传递认证凭证采用SSL/TLS加密
SSRF-服务器端请求伪造
SSRF原理?
SSRF 形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能,且没有对目标地址做过滤与限制。比如从指定URL地址获取网页文本内容,加载指定地址的图片,文档等等。SSRF漏洞通过篡改获取资源的请求发送给服务器(服务器并没有检测这个请求是否合法的),然后服务器以他的身份来访问服务器的其他资源。SSRF利用存在缺陷的Web应用作为代理攻击远程和本地的服务器。
SSRF攻击方法?
利用file、dict、gopher协议
常用来进行:
端口扫描
攻击内网存在漏洞的服务
攻击Web应用进行指纹识别及其中的漏洞
如果PHP安装了expect扩展,可以通过expect协议执行系统命令
SSRF无回显的时候应该怎么探测内网信息?
Dnslog外带,参考:巧用DNSlog实现无回显注入_weixin_30335575的博客-CSDN博客
SSRF防御方法?
限制请求的端口只能为Web端口,只允许访问HTTP和HTTPS的请求。
限制不能访问内网的IP,以防止对内网进行攻击
屏蔽返回的详细信息
文件上传&文件包含
文件上传漏洞原理?
文件上传漏洞是指用户上传了一个可执行的脚本文件(php、jsp、xml、cer等文件),而WEB系统没有进行检测或逻辑做的不够安全。
文件上传绕过方法?
前端检查
抓包绕过,修改MIME
后端检查
利用WEB服务器解析错误,后缀绕过
%00文件截断
黑名单绕过
文件格式检查绕过
文件上传防御
文件类型判断(后缀白名单与MIME类型判断结合)
文件重命名
文件上传目录设置为不可执行
文件包含与上传
已知某网站存在LFI(本地文件包含),但是无法上传任何文件,针对该情况有哪些利用方式?
查看敏感文件,如/etc/passwd
包含本地日志文件getshell,如ssh登录日志
点击劫持
x-frame-option有哪些选项,作用是什么?
X-Frame-Options: DENY,禁止frame加载
X-Frame-Options: SAMEORIGIN,同源可加载
X-Frame-Options: ALLOW-FROM http://xxx.com/,指定某域名与加载
用于抵抗点击劫持
浏览器安全
返回证书错误的原因?
证书不是权威机构发布的
证书中域名与服务器不对应
证书已过期
讲一讲同源策略SOP?
同源策略(Same Origin Policy)是浏览器最基本的的安全功能,限制了来自不同源的“document”或脚本,对当前的“document”读取或设置某些属性。
浏览器将不同的根域名、子域名、端口、协议认为是不同的域。由于浏览器安全限制,数据是不可以直接跨域请求的,除非目标域名授权你可以访问。
讲一讲内容安全策略CSP?
内容安全策略(Content Security Policy,简称 CSP),与内容安全有关,主要是用来定义哪些资源可以被当前页面加载,减少 XSS 的发生。最早在firefox 23中实现,当时使用的是 X-Content-Security-Policy,它使用了前置词的内容安全性策略,并以W3C CSP1.0规范作为标准。
CSP 有三类:
Content-Security-Policy (Google Chrome)
X-Content-Security-Policy(Firefox)
X-WebKit-CSP (WebKit-based browsers, e.g. Safari)
说一下jsonp跨域劫持?
知道创宇-jsonp劫持分析
HttpOnly的作用?
如果cookie中设置了HttpOnly属性,那么通过js脚本将无法读取到cookie信息,这样能有效的防止XSS攻击窃取cookie内容的情况发生,这样就增加了cookie的安全性。
PHP中如何使用phar://伪协议触发反序列化,利用场景以及前提条件有哪些?
利用phar文件会以序列化的形式存储用户自定义的meta-data这一特性,拓展了php反序列化漏洞的攻击面。
前提:可控制输入.phar文件,被攻击服务器有使用phar伪协议解析phar文件
如何绕过php.ini中disable_function的限制,有哪些方法?
bypass disable_function
文件上传中%00截断的原理是什么,利用前提条件是什么?
其实截断的原理也很简单,无论0x00还是%00,最终被解析后都是一个东西:chr(0)
chr()是一个函数,这个函数是用来返回参数所对应的字符的,也就是说,参数是一个ASCII码,返回的值是一个字符,类型为string。
那么chr(0)就很好理解了,对照ASCII码表可以知道,ASCII码为0-127的数字,每个数字对应一个字符,而0对应的就是NUT字符(NULL),也就是空字符,而截断的关键就是这个空字符,当一个字符串中存在空字符的时候,在被解析的时候会导致空字符后面的字符被丢弃。
利用条件:
Nessus、OpenVAS(GVM)、X-scan、腾讯 T-Sec、华为 VSS
中间人攻击如何防御?
加密传输,例如,使用https代替http
怎么对攻击溯源?举一个对攻击溯源的例子
网站源码分析
日志分析
服务器端口分析
进程分析
举例:网站CPU、内存消耗暴增,某网页访问异常。
查看网站源码进行漏洞定位
日志分析,查看管理员等账号登录时间
服务器端口分析,查看是否开放不常用端口
进行分析,查看当前运行进程,top找到cpu,内存占比大的进程,进而找到后门脚本
怎么检测webshell?
检测危险函数,如,exec,eval等
文件名,检测常见wenshell文件名,如php一句话.php,php小马.php
日志分析,某页面总访问量小,访问IP数量少
机器学习建模,文本特征提取
实现一个一句话webshell,绕过RASP的方式有哪些,绕过机器学习检测的方式有哪些,绕过AST-Tree的方式有哪些?
rasp这类工具是基于java、php运行期的堆栈信息进行分析,可以尝试使用jni技术进行绕过。java技术栈中的jni的原理是使用java调用c、c++函数,具体实现的思路是jsp编译为class文件,该class通过jni技术调用另外一处dll里的函数绕过黑名单执行命令获取回显,即可实现rasp和安全防护软件的绕过。github地址:https://github.com/nanolikeyou/jniwebshell
利用Gopher扩展哪些攻击面?
Mysql、Redis等
Struct2漏洞?
UDF提权?
渗透测试
渗透测试的流程?
前期交互
信息搜集
威胁建模
漏洞扫描与分析
渗透攻击
后渗透攻击
痕迹清理
报告阶段
信息收集
nmap扫描原理,Nmap扫描中的一些细节,针对什么情况使用哪种扫描?
网络安全-端口扫描神器Nmap使用详解与参数指导_lady_killer9的博客-CSDN博客
如何对外使用nmap扫描,遇到防火墙的情况又该怎么办?
网络安全-端口扫描神器Nmap使用详解与参数指导_lady_killer9的博客-CSDN博客
dmz区域的作用以及位置?
DMZ是为了解决安装防火墙后外部网络的访问用户不能访问内部网络服务器的问题,而设立的一个非安全系统与安全系统之间的缓冲区。该缓冲区位于企业内部网络和外部网络之间的小网络区域内。在这个小网络区域内可以放置一些必须公开的服务器(如企业Web服务器、FTP服务器和论坛等);另一方面,通过这样一个DMZ区域,更加有效地保护了内部网络。因为这种网络部署,比起一般的防火墙方案,对来自外网的攻击者来说又多了一道关卡。
应急响应的步骤?
收集信息:收集客户信息和中毒主机信息,包括样本。
判断类型:判断是否是安全事件,何种安全事件,勒索、挖矿、断网、DoS等等。
深入分析:日志分析、进程分析、启动项分析、样本分析。
清理处置:直接杀掉进程,删除文件,打补丁,抑或是修复文件。
产出报告:整理并输出完整的安全事件报告。
参考:应急响应的整体思路和基本流程 - FreeBuf网络安全行业门户
如何绕过CDN找到真实IP,请列举五种方法 ?
查看 IP 与 域名绑定的历史记录,可能会存在使用 CDN 前的记录
使用国外主机解析域名:国内很多 CDN 厂商因为各种原因只做了国内的线路,而针对国外的线路可能几乎没有,此时我们使用国外的主机直接访问可能就能获取到真实IP。
网站邮件订阅查找:RSS邮件订阅,很多网站都自带 sendmail,会发邮件给我们,此时查看邮件源码里面就会包含服务器的真实 IP 了。
网络空间引擎搜索法:常见的有钟馗之眼,shodan,fofa搜索。以fofa为例,只需输入:title:“网站的title关键字”或者body:“网站的body特征”就可以找出fofa收录的有这些关键字的ip域名,很多时候能获取网站的真实ip。
查询子域名:毕竟 CDN 还是不便宜的,所以很多站长可能只会对主站或者流量大的子站点做了 CDN,而很多小站子站点又跟主站在同一台服务器或者同一个C段内,此时就可以通过查询子域名对应的 IP 来辅助查找网站的真实IP。
渗透攻击
redis未授权访问如何利用,利用的前提条件是什么?有哪些利用方式?
前提条件:redis配置错误,无密码,可以使用redis服务
利用方式:
利用计划任务执行命令反弹shell、往web物理路径写webshell
写ssh-keygen公钥然后使用私钥登陆
漏洞修复:
一切的源头都是未授权方访问,如果要允许远程连接一定要,开启protected-mode(保护模式)设置ip白名单,设置密码
更新高版本的redis服务,服务器使用低权限用户运行redis服务
mysql提权方式有哪些?利用条件是什么?
条件:MySQL具有root的权限、MySQL以system权限运行、具有执行SQL语句的权限
mof
udf
反弹shell
RPO漏洞
RPO攻击方式的探究 - FreeBuf网络安全行业门户
复现过漏洞吗?复现的过程?
这需要你自己写,找个有点名气的cve,复现一下
Linux 安全
怎样对一个linux服务器进行安全加固(怎样将不需要的端口off掉)?
kill 进程
service xxx stop
Linux 如何保护 SSH?
禁止root登录,禁止空口令
如安全要求等级高,可以禁止口令,使用私钥文件登录,也可以使用证书+私钥的方式限时登录
入侵 Linux 服务器后需要清除哪些日志?
web日志的清理:access.log 和auth.log 位置在/var/log/下面。
系统日志清理:/root/.bash_history
SSH 日志
反弹 shell 的常用命令?从主机的层面,反弹shell如何监控?
网络安全-反弹shell详解(攻击,检测与防御)
假设某Linux机器存在命令审计(方法未知),有哪些可能的绕过方法?
空格绕过
编码绕过
单双引号绕过
反斜杠绕过
Linux常见的提权方法有哪些?
内核漏洞提权
SUID提权
SUDO提权
反弹Shell
ARP攻击原理?
网络-ARP协议详解与ARP欺骗(中毒)攻击实战_lady_killer9的博客-CSDN博客_arp欺骗报文
简述ddos攻击,该攻击的原理是什么?描述下cc攻击?
网络安全-DoS与DDoS攻击原理(TCP、UDP、CC攻击等)与防御_lady_killer9的博客-CSDN博客_ddos攻击
CBC和ECB区别?
ECB
优点:
简单;
有利于并行计算;
误差不会被传递;
缺点:
不能隐藏明文的模式;
可能对明文进行主动攻击;
CBC
优点:
不容易主动攻击,安全性好于ECB,是SSL、IPSec的标准;
缺点:
不利于并行计算;
误差传递;
需要初始化向量IV;
ECC原理了解吗?
ECC是建立在基于椭圆曲线的离散对数问题上的密码体制,给定椭圆曲线上的一个点G,并选取一个整数k,求解K=kG很容易;反过来,在椭圆曲线上给定两个点K和G,若使K=kG,求整数k是一个难题。ECC就是建立在此数学难题之上,这一数学难题称为椭圆曲线离散对数问题。其中椭圆曲线上的点K则为公钥(注意公钥K是一个椭圆曲线点,在OpenSSL里面是用结构体EC_Point来表示的,整数k则为私钥。
RSA是什么,应用在哪些地方?
RSA是依赖于大整数的素因子分解的非对称算法,可应用于WEB,https协议等
散列里MD5什么时候用?
MD5进行信息摘要,可在WEB登录口令时使用,一般采用加盐的方式
对称加密和非对称加密的区别?
对称加密使用同一密钥,非对称加密使用两个密钥,公钥和私钥
对称加密一般耗时短,非对称加密耗时长
对称加密存在密钥传输安全性问题,非对称公钥可公开
对称加密不能提供
数字签名的原理?
1、将要签名的文件进行hash计算。
2、用私钥将文件的hash值进行签名。
3、除了签名外,还可以添加时间戳以指示签名时间。
1、将原文件进行hash计算得到hash值。
2、将签名的公钥从签名数据中计算出签名数据中的hash值。
3、将步骤1中得到的hash值和步骤2得到的hash值进行对比,如果对比结果一致则验证通过,反之验证失败。
PKI的架构?
认证机构CA,注册机构RA
证书和证书库
密钥管理(密钥生成、密钥托管、密钥备份和恢复、密钥更新)
应用系统编程接口API
客户端软件
建议大家在简历上面具体写出几个漏洞,方便面试官提问和自己做准备。
无论如何,文章不可能覆盖所有面试题,也有面试官是根据你的简历来提问的,博主进行总结,希望大家能够由点及面,查漏补缺,文中答案仅供参考。祝大家拿到心仪的offer!!!
我的秋招面经:渣硕的安全工程师面经(阿里,美团,腾讯,华为,字节)_笔经面经_牛客网
参考
牛客网-安全面经
网络安全-自学笔记_lady_killer9的博客-CSDN博客
网络安全-反序列化漏洞简介、攻击与防御
网络安全-点击劫持(ClickJacking)的原理、攻击及防御
Go-AES算法详解与代码
Go-Des和3Des算法详解与代码
Go-RSA加密解密详解与代码
同源策略及跨域请求
Github-Gopherus
Github-web-sec-interview
Github-sec_interview_known_list
Github-Security-interview
Github-1earn
Github-sec-interview
11种绕过CDN找到真实ip的方法
蓝队
1、自我介绍
2、设备误报如何处理(日志)
3、如何查看区分是扫描流量和手动流量(扫描数据量大,请求有规律,手动扫描间隔较少)
4、被拿shell了如何处理(排查、清除、关站、看看可有即使修复的可能,没有可能就关站)
5、如何分析被代理出来的数据流
蓝队
1、溯源 态势感知 安全设备
2、基础的漏洞原理 ssrf xxe Redis几种利用方式
1、印象最深的渗透经历,技术关键点
2、是否在漏洞平台有提交过漏洞,以及排名情况
3、平时挖洞的情况,平台提交漏洞和渗透测试方面
1、讲一下使过的中间件漏洞
2、getshell后如何维持权限
3、隧道、流量代理方面
(内容稍多)
问:打点一般会用什么漏洞
优先以java反序列化这些漏洞像shiro,fastjson,weblogic,用友oa等等进行打点,随后再找其他脆弱性易打进去的点。
因为javaweb程序运行都是以高权限有限运行,部分可能会降权。
问:平常怎么去发现shiro漏洞的
登陆失败时候会返回rememberMe=deleteMe字段或者使用shiroScan被动扫描去发现
完整:
未登陆的情况下,请求包的cookie中没有rememberMe字段,返回包set-Cookie里也没有deleteMe字段
登陆失败的话,不管勾选RememberMe字段没有,返回包都会有rememberMe=deleteMe字段
不勾选RememberMe字段,登陆成功的话,返回包set-Cookie会有rememberMe=deleteMe字段。但是之后的所有请求中Cookie都不会有rememberMe字段
勾选RememberMe字段,登陆成功的话,返回包set-Cookie会有rememberMe=deleteMe字段,还会有rememberMe字段,之后的所有请求中Cookie都会有rememberMe字段
问:shiro有几种漏洞类型
shiro 550
shiro 721
问:weblogic权限绕过有没有了解
https://blog.csdn.net/weixin_45728976/article/details/109512848
好像是用./进行绕过的
问:fastjson漏洞利用原理
具体:https://www.cnblogs.com/hac425/p/9800288.html
回答:在请求包里面中发送恶意的json格式payload,漏洞在处理json对象的时候,没有对@type字段进行过滤,从而导致攻击者可以传入恶意的TemplatesImpl类,而这个类有一个字段就是_bytecodes,有部分函数会根据这个_bytecodes生成java实例,这就达到fastjson通过字段传入一个类,再通过这个类被生成时执行构造函数。
问:weblogic有几种漏洞
weblogic就好多了,基于T3协议的反序列化;基于xml解析时候造成的反序列化,还有ssrf,权限绕过等等
问:IIOP听说过吗,和什么类似
java RMI通信,也就是远程方法调用,默认是使用jrmp协议,也可以选择IIOP。
问:这几个漏洞不出网情况下怎么办
让这几个漏洞回显
问:拿到webshell不出网情况下怎么办
reg上传去正向连接。探测出网协议,如dns,icmp
问:dns出网协议怎么利用
将域名解析指向自己的vps,然后设置ns记录等等,不记得了
问:横向渗透命令执行手段
psexec,wmic,smbexec,winrm,net use共享+计划任务+type命令
问:psexec和wmic或者其他的区别
psexec会记录大量日志,wmic不会记录下日志。wmic更为隐蔽
问:Dcom怎么操作?
通过powershell执行一些命令,命令语句比较复杂,不记得了
问:抓取密码的话会怎么抓
procdump+mimikatz 转储然后用mimikatz离线读取
Sam 获取然后离线读取
问:什么版本之后抓不到密码
windows server 2012之后(具体我也忘记了)
问:抓不到的话怎么办
翻阅文件查找运维等等是否记录密码。或者hash传递、或者获取浏览器的账号密码等等。
问:域内攻击方法有了解过吗
MS14-068、Roasting攻击离线爆破密码、委派攻击,非约束性委派、基于资源的约束委派、ntlm relay
问:桌面有管理员会话,想要做会话劫持怎么做
提权到system权限,然后去通过工具,就能够劫持任何处于已登录用户的会话,而无需获得该用户的登录凭证。
终端服务会话可以是连接状态也可以是未连接状态(这里当时没答上来,觉得有点鸡肋。我也不知道是不是这个意思)
面试难度:中-
面试感受:由于面试习惯了,面试不带紧张。面试的攻击手法其实也就这些,懂了就ok
如果觉得有用,可以点个再看收藏下,指不定就能用上呢
1、请求方式几种(目前常用八种请求方式,分别是GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT,get和post最常用)
2、域名解析记录对应工具(nslookup、万能ping)
3、web十大漏洞
(1)注入,(2)失效的身份认证和会话管理(使用别人会话id,包含身份信息信用卡),(3)XSS跨站(存储、反射、dom),(4) 不安全的对象直接引用(如?id=89改成?id=90,可以看到id=90的信息),(5)伪造跨站请求(CSRF可以在受害者毫不知情的情况下以受害者名义伪造请求发送给受攻击站点)
(6) 安全误配置,(7)限制URL访问失败(缺少功能级访问控制),(8)未验证的重定向和转发,(9)应用已知脆弱性的组件,(10)敏感信息暴
4、溯源和反制(https://mp.weixin.qq.com/s/WXsEJZpGkpca6jpJWOrDtA,溯源关键点别人挂了代理怎么办)
5、windows提权
6、Linux提权,排查思路(看账号、进程、流量、日志、木马)
7、各种函数(主要指php漏洞函数serialize和 unserialize,MD5 compare,is_numeric,extract()变量覆盖,命令执行函数system、exec,文件包含require()、require_once()、include()、include_once()),提权,加固,后门
8、分析日志工具(ELK,日志IP,时间,恶意流量,攻击方式,攻击哪里)
1、HW经历(取得的成果)、主要负责什么
2、溯源和应急(参考GitHub上应急响应思维导图, )
通常看日志记录情况,日志详细的情况,ip、时间、事件(恶意流量或者恶意访问日志)、作用,被攻击的地方即使修复,清理后门
3、擅长web还是内网,然后谈谈
1、基础漏洞
2、溯源和应急响应
问的偏细节
1、php序列化
2、溯源
1、谈谈工作和HW经历
2、谈一下现在有一台windows server2008 如何提权
3、windows系统常见漏洞编号
1.谈谈工作HW经历
2、代码分析,根据面试方发来的代码进行分析
(1)weblogic反序列化代码
(2)一个PHP的exp,分析哪个版本,并分析exp上各参数的作用
1、 谈谈HW经历
2、 谈谈挖洞和渗透印象较深的两次,过程、方法,获取了什么权限
3、 谈谈内网流量如何出来
4、 使用过哪些溯源平台
问的很细
1、 谈谈IDS和IPS
2、 Java 反序列化的原理
3、 谈谈自己常用的中间件漏洞
4、 Windows和Linux的日志文件放在哪里
360提前进场 3000
1、基础知识,注入函数,PHP系统执行命令函数
2、如何响应,溯源
3、成功拿到系统shell后,你回去看哪些文件(主要是一些配置文件)
1、谈谈OOB(利用NETBIOS中一个OOB (Out of Band)的漏洞而来进行的,它的原理是通过TCP/IP协议传递一个数据包到计算机某个开放的端口上(一般是137、138和139),当计算机收到这个数据包之后就会瞬间死机或者蓝屏现象,不重新启动计算机就无法继续使用TCP/IP协议来访问网络。)
2、谈谈IDS(IntrusionDetection Systems入侵检测系统)
3、谈谈IDR(敏感数据发现与风险评估系统 Insightfor Discovery and Risk)
1、 谈谈作为蓝队护网过程使用过厂商的设备,
2、 如何查看系统内存shell
3、 Linux的登录日志查看文件
4、 获得文件读取漏洞,通常会读哪些文件,Linux和windows都谈谈
1、 xss怎么getshell
2、 sqlsever怎么在xpcmd禁用的情况拿shell
3、 java的所有反序列化
4、 常用中间件漏洞
5、 手工注入怎么写shell