Cyber_Security_Notes/40道网安面试题.md
2024-11-19 11:39:15 +08:00

15 KiB
Raw Blame History

  1. 什么是防火墙?

    它是为网络设计的安全系统。防火墙设置在监视和控制网络流量的任何系统或网络的边界上。防火墙通常用于保护系统或网络免受恶意软件,蠕虫和病毒的侵害。防火墙还可以防止内容过滤和远程访问。

  2. linux系统中的计划任务crontab配置文件中的五个星星分别代表什么

    分,时,日,月,星期几

  3. 解释暴力攻击。怎么预防呢?

    找出正确的密码或PIN码是一种反复试验的方法。黑客反复尝试使用所有凭据组合。在许多情况下暴力攻击是自动进行的其中软件会自动运行以使用凭据登录。有多种方法可以防止蛮力攻击。他们是

    • 设置密码长度。
    • 增加密码复杂度。
    • 设置登录失败的限制。
  4. 简述BP的作用

    是通过设置浏览器代理进行网络渗透用于攻击web应用集成平台可进行拦截和修改http包;bp也有转码解码作用16进制ascii,basse64等等;

    introder模块实现一个自动化的攻击或是密码爆破repeater模块一般使用这个功能也是通过Proxy抓包然后send过来的。

    主要就是修改请求的各项参数等等然后点击左上角的go发送出去然后在右边接受到请求请求和响应都可以以不同的形式展示出来

    compare模块主要是一个比较功能可以在Proxy处截包发送过来进行比较也可以直接加载文件进行比较。

  5. SQL注入的原理如何防御

    由于程序开发者在编译时未对用户输入进行过滤导致用户可以在url中进行SQL查询语句代入数据库

  6. 发生安全事件怎么做应急响应? 先确定范围做好隔离网络隔离ACL等判断事情严重程度同时联系法务部门看是自己取证还是公安部门取证事后做好分析做好相关安全加固

  7. DDOS攻击是什么原理怎么防御 分布式拒绝服务攻击,是黑客控制肉鸡来进行占用资源导致服务器资源耗尽。例如:餐厅来了许多人把座位占满,他们不点菜,只占座,导致正常来吃饭的客人无法就餐。

    防御购买抗D服务流量清洗扩带宽

  8. 反射型XSS漏洞的原理如何防御

    一种通过外部输入然后直接在浏览器端触发即反射型XSS

    防御:

    1 特殊字符HTML实体转码。最好的过滤方式是在输出和二次调用的时候进行加HTML实体一类的转码防止脚本注入。

    2 标签事件属性黑名单。特殊字符容易被绕过,所以还得加标签事件得黑名单或者白名单,这里推荐使用白名单的方式,实现规则可以直接使用正则表达式来匹配,如果匹配到的事件不在白名单列表,就可以直接拦截,而不是过滤为空。

  9. 请求伪造类的攻击原理是什么?

    用户提交的URL和服务器端返回的信息需要做过滤否则就会被黑客做请求伪造攻击。发生在客户端的叫CSRF发生在服务器端的叫SSRF

  10. 文件上传漏洞原理及防御?

    程序员在开发任意文件上传功能时并未考虑文件格式后缀的合法性校验或者是否只在前端通过js进行后缀检验。这时攻击者可以上传一个与网站脚本语言相对应的恶意代码动态脚本例如(jsp、asp、php、aspx文件后缀)到服务器上,从而访问这些恶意脚本中包含的恶意代码,进行动态解析最终达到执行恶意代码的效果,进一步影响服务器安全。

    服务器开启了不当的设置或者存在解析漏洞比如nginx开启 Fast-CGI情况下上传名字为a.jpg内容为一句话木马的文件然后访问a.jpg/.php在这个目录下就会生成一句话木马或者是开启了不安全的方法比如putdelete方法比如apache的解析漏洞若一个文件名abc.x1.x2.x3Apache会从x3开始解析如果x3不是一个能解析的扩展名就往前解析x2以此往复直到能遇到一个能解析的文件名为止。IIS6.0 在解析 asp 时有两个解析漏洞,一个是如果任意目录名包含 .asp 字符串,那么这个目录下的所有文件 都会按照 asp 去解析,另一个是文件名中含有 asp; 就会优先当作 asp 来解析。

    IIS7.0/7.5 对php解析有所类似于 Nginx 的解析漏洞。只要对任意文件名在url后面追加上 字符串 / 任意文件名.php 就会按照php去解析。如上传test.jpg然后访问test.jpg/.php或test.jpg/abc.php当前目录下就会生成一句话木马 shell.php

    防御:

    在客户端和服务器端对用户上传的文件名和文件路径等项目分别进行严格的检查。还需对%00截断符进行检测对HTTP包头的content-type也和上传文件的大小也需要进行检查。文件上传的目录设置为不可执行。只要web容器无法解析该目录下面的文件即使攻击者上传了脚本文件服务器本身也不会受到影响。

    判断文件类型。在判断文件类型时可以结合使用MIME Type、后缀检查等方式。在文件类型检查中使用白名单方式。此外对于图片的处理可以使用压缩函数或者resize函数在处理图片的同时破坏图片中可能包含的HTML代码。

    使用随机数改写文件名和文件路径。文件上传如果要执行代码则需要用户能够访问到这个文件。在某些环境中用户能上传但不能访问。如果应用了随机数改写了文件名和路径将极大地增加攻击的成本。再来就是像shell.php.rar.rar和crossdomain.xml这种文件都将因为重命名而无法攻击。

    单独设置文件服务器的域名。由于浏览器同源策略的关系一系列客户端攻击将失效比如上传crossdomain.xml、上传包含Javascript的XSS利用等问题将得到解决。

    使用安全设备防御。文件上传攻击的本质就是将恶意文件或者脚本上传到服务器,专业的安全设备防御此类漏洞主要是通过对漏洞的上传利用行为和恶意文件的上传过程进行检测。恶意文件千变万化,隐藏手法也不断推陈出新,对普通的系统管理员来说可以通过部署安全设备来帮助防御。

  11. 文件包含漏洞原理及防御?

    • 原理:

    在通过PHP的相应函数比如include())引入文件时,由于传入的文件名没有经过合理的校验,从而操作了预想之外的文件,就可能导致意外的文件泄露甚至恶意的代码注入。

    需要满足的两个条件1、 include()等函数通过动态变量的方式引入需要包含的文件。2、用户能够控制这个动态变量。

    • 防御:

    对代码编程做过滤由于Include/Require可以对PHP Wrapper形式的地址进行包含执行需要配置php.ini在Linux环境中可以通过”…/…/”的形式进行目录绕过所以需要判断文件名称是否为合法的PHP文件。代码在进行文件包含时如果文件名可以确定可以设置白名单对传入的参数进行比较。PHP配置文件中有open_basedir选项可以设置用户需要执行的文件目录如果设置目录的话PHP仅仅在该目录内搜索文件。PHP配置中的allow_url_include选项如果打开PHP会通过Include/Require进行远程文件包含由于远程文件的不可信任性及不确定性在开发中禁止打开此选项PHP默认是关闭的。

  12. 什么是同源策略?

    同源策略是检查页面跟本机浏览器是否处于同源,只有跟本机浏览器处于同源的脚本才会被执行,如果非同源,那么在请求数据时,浏览器会在控制台中报一个异常,提示拒绝访问。

  13. 简述Localstorage和sessionstorage区别

    localStorage和sessionStorage一样都是用来存储客户端临时信息的对象。

    他们均只能存储字符串类型的对象(虽然规范中可以存储其他原生类型的对象,但是目前为止没有浏览器对其进行实现)。

    localStorage生命周期是永久这意味着除非用户显示在浏览器提供的UI上清除localStorage信息否则这些信息将永远存在。

    sessionStorage生命周期为当前窗口或标签页一旦窗口或标签页被永久关闭了那么所有通过sessionStorage存储的数据也就被清空了

  14. 什么是原子操作?

    所谓原子操作是指不会被线程调度机制打断的操作;这种操作一旦开始,就一直运行到结束,中间不会有任何 context switch (切换到另一个线程)。

  15. windows系统的安全键是什么

    ctrl+alt+delete机器默认接收此指令后立即终端当前所有进程激活重新登录页面提示输入用户名和密码

  16. 怎样绕cdn获取网络真实ip?

    可以尝试连上国外代理ping域名若ip不变即为真实ip。或者通过shodanfofa搜索域名尝试通过返回的信息判断真实ip

  17. 主机被入侵了怎么办?

    主机被入侵优先看自己开放的服务。从而排查出可能的攻击点。比如开放http服务可能是被web渗透进入。比如开放ssh可能是被弱口令进入。在确定服务后可以去相应服务日志下面排查看看能不能找到攻击IP

  18. 作为网站后台管理员,怎样防止后台页面被别人搜到?

    最简单的是写一个过滤器判断该用户是否为管理员如果是则可以跳到管理员页面如果不是则调回首页只要在users 表增加一个 role 字段来判断就行了。第二种就是建立一个权限系统(基于多个过滤器实现),如果你是使用 java 的,可以选择使用 spring security参照官方的文档配置一个简单的文件即可。复杂一点可以建立几个数据库表用户表权限表资源表用户-权限表,权限-资源表,权限组表,这样就可以实现一套很基础的权限系统了

  19. SQL注入时为什么有时候没有回显结合php说说

    设置了php.ini 为display_errors设置为off。同时设置error_reporting为E_ALL因此没有错误回显。

  20. 什么叫APT攻击

    APT攻击即高级可持续威胁攻击,也称为定向威胁攻击,指某组织对特定对象展开的持续有效的攻击活动。

    一、以智能手机、平板电脑和USB等移动设备为目标和攻击对象继而入侵企业信息系统的方式。

    二、社交工程的恶意邮件是许多APT攻击成功的关键因素之一随着社交工程攻击手法的日益成熟邮件几乎真假难辨。从一些受到APT攻击的大型企业可以发现这些企业受到威胁的关键因素都与普通员工遭遇社交工程的恶意邮件有关。黑客刚一开始就是针对某些特定员工发送钓鱼邮件以此作为使用APT手法进行攻击的源头。

    三、利用防火墙、服务器等系统漏洞继而获取访问企业网络的有效凭证信息是使用APT攻击的另一重要手段

  21. 定义ARP及其工作过程。

    它是用于查找与IPv4地址关联的MAC地址的协议。该协议充当OSI网络和OSI链路层之间的接口。

  22. 解释僵尸网络。

    它是由互联网连接的许多设备例如服务器移动设备IoT设备和受恶意软件控制的PC。

  23. SSL和TLS之间的主要区别是什么

    两者之间的主要区别在于SSL验证发送方的身份。SSL可帮助您跟踪与之通信的人。TLS提供了两个客户端之间的安全通道。

  24. CSRF的缩写是什么

    CSRF代表“跨站请求伪造”。

  25. 什么是2FA如何在公共网站上实施

    TFA代表两因素身份验证。识别访问在线帐户的人是一个安全过程。仅在向身份验证设备提供证据后才授予用户访问权限。

  26. 解释非对称和对称加密之间的区别。

    对称加密需要相同的密钥进行加密和解密。另一方面,非对称加密需要不同的密钥进行加密和解密。

  27. XSS的完整形式是什么

    XSS代表跨站点脚本。

  28. 解释WAF

    WAF代表Web应用程序防火墙。WAF用于通过过滤和监视Web应用程序与Internet之间的传入和传出流量来保护应用程序。

  29. 什么是骇客?

    黑客入侵是发现计算机或专用网络中的弱点以利用其弱点并获得访问权限的过程。例如,使用密码破解技术来访问系统。

  30. 谁是黑客?

    黑客是指发现并利用计算机系统,智能手机,平板电脑或网络中的弱点来获取访问权限的人。黑客是具有计算机安全知识的经验丰富的计算机程序员。

  31. 什么是网络嗅探?

    网络嗅探是用于分析通过网络发送的数据包的工具。这可以通过专用软件程序或硬件设备来完成。嗅探可用于:

    • 捕获敏感数据,例如密码。
    • 窃听聊天消息
    • 通过网络监控数据包
  32. DNS监视的重要性是什么

    雍域很容易感染恶意软件。您需要使用DNS监视工具来识别恶意软件。

  33. 定义腌制过程。加盐有什么用?

    盐腌是通过使用特殊字符来延长密码长度的过程。要使用盐腌了解盐腌的整个机制非常重要。撒盐是为了保护密码。它还可以防止攻击者在整个系统中测试已知单词。例如将Hash“ QxLUF1bgIAdeQX”添加到每个密码中以保护您的密码。它被称为盐。

  34. 什么是SSH

    SSH代表安全套接字外壳或安全外壳。它是一个实用程序套件可为系统管理员提供安全的方法来访问网络上的数据。

  35. SSL协议足以确保网络安全吗

    SSL验证发送者的身份但是一旦将数据传输到服务器它就不提供安全性。最好使用服务器端加密和散列来保护服务器免遭数据泄露。

  36. 什么是黑盒测试和白盒测试?

    黑匣子测试:这是一种隐藏内部结构或程序代码的软件测试方法。

    白盒测试:一种软件测试方法,其中测试人员知道其内部结构或程序。

  37. 解释网络安全中的漏洞。

    漏洞是指威胁者可以利用的软件代码中的薄弱点。它们最常见于SaaS软件即服务软件之类的应用程序中。

  38. 说明TCP三向握手。

    它是网络中用于在本地主机和服务器之间建立连接的过程。此方法要求客户端和服务器在开始通信之前协商同步和确认数据包。

  39. 定义术语残余风险。应对风险的三种方法是什么?

    在发现和消除威胁之后,这是一种平衡风险暴露的威胁。

    应对风险的三种方法是:减少它、躲开它、接受。

  40. 定义渗透。

    数据泄露是指未经授权从计算机系统传输数据。该传输可以是手动的,并且可以由对计算机具有物理访问权限的任何人执行。