网络安全相关面试题(hw)

  • 网络安全面试题

    • 报错注入有哪些函数
      • updatexml注入

        • 载荷注入

        • insert注入

        • updata注入

        • delete注入

      • extractvalue()注入

    • 注入防御方法
      • 涵数过滤

      • 直接下载相关防范注入文件,通过incloud包含放在网站配置文件里面

      • PDO预处理,从PHP 5.1开始,php可以通过PDO的prepare预处理函数执行sql语句

    • mysql写webshell注入点需要哪些条件
      • 需要知道远程web目录

      • 需要知道MySQL root权限

      • 需要知道远程目录有写入权限

      • 需要数据库开启secure_file_priv 相当于secure_file_priv的值为空,不为空不充许写入webshell (默认不开启,需要修改mysql.ini配置文件)

    • 数据库注入常见的函数
      • database()、user()、version()、system()、concat()

        • database这个函数返回当前正在连接的数据库名

        • 提供当前数据库会话的用户名

        • 返回数据库服务器的版本信息

        • 可以用来执行操作系统级别的命令

        • concat这个函数用于连接多个字符串或表达式

    • mysql数据库的账号密码保存在哪里
      • 数据库最高权限是root 密码保存在数据库user表中;密码条用musql 5特有的加密,cmd5解密

    • apache的默认路径
      • /etc/apache2/httpd.conf 或

      • /etc/httpd/conf/httpd.conf

    • apache的日志文件路径
      • Linux

        • 错误日志:/var/log/apache2/error.log

        • 访问日志:/var/log/apache2/access.log

      • Windows(假设Apache安装在默认的C:\Apache24目录下)

        • 错误日志:C:\Apache24\logs\error.log

        • 访问日志:C:\Apache24\logs\access.log

    • mysql4与5的注入区别
      • MySQL 4版本数据库由于存在着字符转义与不支持字句查询的情况,因此在注入攻击上存在着很大的局限性,只能采用类似Access的方法进行查询猜解。 首先,利用order by获得当前表的字段数,再使用union select联合查询来获取想要的数据库信息。使用union select联合查询数据库时,由于不知道数据库中的表名与字段名,因此只能像Access一样直接用常见表名和字段名进行猜测判断。

      • MySQL 5版本由于information_schema库的存在,注入攻击相对来说方便了许多 通过load_file()函数来读取脚本代码或系统敏感文件内容,进行漏洞分析或直接获取数据库连接账号、密码。 通过dumpfile/outfile函数导出获取WebShell。

    • mysql写webshell的语句如何写
      • union select "<?php @eval($_POST['123']);?>",2 into outfile "C:\\phpStudy\\WWW\\123.php"+--+&Submit=Submit

    • sqlmap的post注入用什么参数
      • -r

    • sqlmap的cookie注入加什么参数
      • --level ≥2

        • 执行测试的等级(1-5,默认为1)

    • sqlmap检查user-agent和refere头用什么参数
      • --level ≥3

    • sqlmap获取表名
      • --tables -D 数据库名

    • sqlmap的get注入用什么参数
      • -u

    • sqlmap注入显示paybad
      • -v 3

    • sqlmap获取当前数据库表名
      • --current -db

    • sqlmap当前所有数据库名
      • --dbs

    • sqlmap获取字段名
      • --columns -T user(表) -D abc(库)

    • sqlmap指定参数注入
      • -p

    • sqlmap获取当前用户
      • --current-user

    • sqlmap列出数据库所有用户
      • --users

    • sqlmap进入命令行产生shell交互
      • --os-shell

    • sqlmap绕过waf用什么参数
      • --tamper

    • xxs分类
      • 反射型

        • 一次性所见即所得,不与数据库交互

      • 存储型

        • 交互的数据会被存在数据库里,永久性存储,具有很强的稳定性

      • DOM型

        • 不与后台服务器产生数据交互,通过前端的dom节点形成的xss漏洞

    • xss能做什么
      • 劫持用户cookie

      • 挂马

      • 键盘记录

      • 钓鱼攻击

    • xss的原理及防御方法
      • 原理:参数给变量未过滤,直接把变量输出;在输出的时候未经html实体编码

      • 防御:对输入进行过滤;对输出进行html实体编码

    • 怎么判断网站使用的struts2 框架
      • 网站URL中是否存在 .action .do结尾的链接

    • 看监控时看过哪些安全设备
      • 青藤云--EDR

      • 奇安信--天眼

      • 安恒明御API攻击平台--API

      • 绿盟黑洞--DDOS

      • 天阗入侵检测系统--IDS

      • 前清入侵防御系统--CPS

      • 网络检测与响应--NDR

    • 天眼看监控时看那些东西
      • 威胁感知--告警列表--攻击结果

    • 天眼被攻击时有哪些提示
      • 看攻击结果:失败、失陷、企图、攻击成功

    • 天眼的五元组由哪几部分
      • 源ip地址、目的ip地址、源端口、目的端口、协议

    • 天眼监控设备的功能
      • 传感器、沙箱、分析平台

    • 敏感信息收集
      • 工具:7kb、破壳、Google back

      • 网站查询:微步在线、威胁情报、天眼查、钟馗之眼

    • 反序列化漏洞产生的原理
      • serialize() 和 unserialize() 在 PHP内部实现上是没有漏洞的,之所以会产生反序列化漏洞是因为应用程序在处理对象、魔术函数以及序列化相关问题的时候导致的。

      • 当传给 unserialize() 的参数可控时,那么用户就可以注入精心构造的 payload。当进行反序列化的时候就有可能会触发对象中的一些魔术方法,造成意想不到的危害。

    • 命令执行测试方法
      • &

      • &&

      • |

      • ||

    • 命令执行原理
      • 命令执行原理:设计者在编写代码时没有做严格的安全控制,导致攻击者通过接口或相关参数提交“意想不到”的命令,从而让后台进行执行,从而控制整个后台服务器 。

    • 命令执行一般出现在哪些地方
      • 只要带参数的地方都可能出现命令执行漏洞

      • 常见的路由器、防火墙、入侵检测、自动化运维平台

    • strus2指纹信息特征
      • 扩展名:.action或.do(URL显示)

      • 流量特征:memberAcecess,getRuntime,println,双引号, 单引号, 等号, 括号之类的符号

    • thinkphp指纹信息特征
      • 在url栏随意添加字符报错,出现倒笑脸

    • Spring 框架指纹信息特征
      • 通过 wappalyzer 插件识别

      • 看 web 应用程序的ico小图标是一个小绿叶子

      • 看报错页面, 显示 type=not fonud status=404

      • 按 f12 看 X-Application-Context头, 显示 sini-oa-sping-boot:server_db:9096

    • apache shiro 框架指纹信息特征
      • 数据返回包中包含 rememberMe=deleteMe 字段

    • JWT指纹信息特征
      • 请求头的Authorization字段,值通常以Bearer开头,后跟JWT令牌

      • JWT令牌结构三部分组成:

        • Header:包含令牌的类型(JWT)和加密算法

        • Payload(载荷):包含声明(Claims)

        • Signature:加密部分,用于验证JWT完整性

    • XXS漏洞原理
      • 参数经变量未经过滤,直接把变量输出,输出未经HTML实体编码

    • XSS如果script、单引号、双引号被过滤怎么绕过
      • 换html标签<img></img>标签<video></video>、大小写双写,注解干扰绕过

    • mssql数据库权限能做什么
      • sa--最高权限

      • dbowner--做数据差异备份

      • publiic--最低权限,可以查看数据库数据

    • SQL注入原理
      • 参数未经处理直接带入数据库查询操作

    • SQL注入分类
      • 数字型、字符型、搜索型、xx型

    • CSRF原理
      • 程序员开发的时候,未对相关页面进行token和referer判断,造成攻击者可构造自己的url地址欺骗目标用户进行点击

    • 如果如果一家公司让你去采购漏洞扫描器,主要看几个点
      • 误报率、爬行能力、漏洞率

    • 渗透中,你用过哪些漏洞扫描器
      • web扫描:awvs、appscan、netspark、xray

      • 系统扫描:天镜、nessus、nmap

      • 绿盟扫描器:极光扫描器(系统)

    • nmap中ping扫描用哪个参数
      • -sn

    • nmap探测版本信息
      • -sV

    • ftp的端口
      • 21

    • weblogic端口
      • 7001/7002

    • nmap探测操作系统类型及版本
      • -O

    • nmap绕过ping扫描(禁ping扫描)
      • -Pn

    • nmap探测漏洞
      • --script

    • nmap中tcp端口扫描
      • -sS

    • nmap中udp端口扫描
      • -sU

    • nmap批量扫描目标地址
      • -iL IP.txt'

    • nmap将扫描结果生成报告
      • -oX(中断不保存)

      • -oA(中断后也保存)

    • CSRF、SSRF和重发攻击有什么区别
      • CSRF是跨站请求伪造攻击,由客户端发起

      • SSRF是服务端请求伪造,由服务器发起

      • 重放攻击是将截获的数据包进行重放,达到身份认证等目的

    • windows系统中毒了,应急方法
      • 一、检查系统账号安全

        • 1、检查服务器是否有弱口令、可疑账号、隐藏账号、克隆账号、远程管理端口是否对公网开放

        • 2、Win+R打开运行,输入eventvwr.msc打开操作系统日志,查看远离元登陆时间

      • 二、检查异常端口、进程

        • 1、使用netstat -ano 检查端口连接情况,是否有远程连接、可疑连接(主要定位ESTABLISHED)

        • 2、根据netstat定位出的pid,再通过tasklist命令进行远程定位tasklist | findstr PID

        • 3、可以使用 D 盾_web 查杀工具、火绒剑、 XueTr 等工具进行判 断可疑进程(如蓝色、红色进程、没有签名验证信息的进程、没有 描述信息的进程、进程的属主、进程的路径是否合法、 CPU 或内存资源占用长时间过高的进程)

      • 三、检查启动项、计划任务、服务

        • 1、检查服务器是否有异常的启动项

        • 2、检查计划任务

        • 3、检查服务自启动

      • 四、检查系统相关信息

        • 1、查看系统版本以及补丁信息

        • 2、查找可疑目录及文件

      • 五、自动化查杀

        • 用 360、卡巴斯基等病毒查杀系统病毒木马, Web 可以用 D 盾、河马工具查杀 Webshell 后门

        • 工具查杀 Webshell 后门

      • 六、日志分析

        • 用 360 星图日志分析工具进行分析攻击痕迹或手工结合 EmEditor 进行日志分析

    • linux系统中毒了,应急方法
      • 1、检查用户及密码文件/etc/passwd 、/etc/shadow 是否存在多余帐号,主要看一下帐 号后面是否是 nologin,如果没有 nologin 就要注意;

      • 2、通过 who 命令查看当前登录用户(tty 本地登陆 pts 远程登录)、w 命令查看系统 信息, 想知道某一时刻用户的行为、 uptime 查看登陆多久、多少用户,负载;

      • 3、修改/etc/profile 的文件,在尾部添加相应显示时间、日期、 ip、命令脚本代码, 这 样输入 history 命令就会详细显示攻击者 ip、时间历史命令等;

      • 4、用 netstat -antlp|more 命令分析可疑端口、 IP 、PID,查看下 pid 所对应的进程文件 路径, 运行 ls -l /proc/$PID/exe 或 file /proc/$PID/exe($PID 为对应的 pid 号);

      • 5、使用 ps 命令, 分析进程 ps aux | greppid

      • 6、使用 vi /etc/inittab 查看系统当前运行级别,通过运行级别找到/etc/rc.d/rc[0~6].d 对应目录是否存在可疑文件;

      • 7、看一下 crontab 定时任务是否存在可疑启用脚本;

      • 8、使用 chkconfig --list 查看是否存在可疑服务;

      • 9、通过 grepawk 命令分析/var/log/secure 安全日志里面是否存在攻击痕迹;

      • 10 、chkrootkit 、rkhunter 、Clamav 病毒后门查杀工具对 Linux 系统文件查杀;

      • 11、如果有 Web 站点,可通过 D 盾、河马查杀工具进行查杀或者手工对代码按脚本木 马关键字、关键涵数(evel 、system 、shell_exec 、exec 、passthru system 、popen)进行查

    • Windows 和 Linux 的日志文件
      • Linux 日志文件通常保存在/var/log 目录

      • Windows 存放在 C:\Windows\System32\winevt\Logs 目录

    • 应急响应流程
      • 准备:信息收集,工具准备

      • 检测:了解资产情况,明确影响, 尝试进行攻击路径溯源

      • 遏制:关闭端口,服务,停止进程,拔网线

      • 根除:通过杀毒软件,清除恶意文件,进程

      • 恢复:备份,恢复系统正常

      • 跟踪:复盘全貌,总结汇报

    • Linux 怎么启动服务、怎么查看服务状态
      • 1、查看 linux 系统下所有的服务, 使用命令: chkconfig --list

      • 2、chkconfig --level 服务运行级别 服务名称 on|off

        • 如: chkconfig --level 345 nfs off

    • hw遇见比较多的报警有那些
      • 弱口令、命令执行、反序列化、任意文件读取、SQL 注入等

    • 内存马原理
      • 原理:就是在 web 组件或者应用程序中,注册一层访问路由,访问者通过这层路由,来执行我们控制器中的代码

    • 内存马清除方式
      • 1.利用条件竞争把 shell 内容改写或者清除比较好用 2.重启服务 3.提前占用他的目录名。也可以直接使用工具 Arthas 发现内存马,再使用 D 盾或河马查找。

    • 天眼网络日志检索使用过吗? HW 中印象深刻的告警有哪些呢?
      • 印象深刻的主要有:反弹 shell、暴力破解、弱口令、反序列化、命令执行等

    • CS 特证码
      • 1、默认端口是 50050

      • 2 、请求的 url 为/jquery-3.3.1.min.js,返回包的大小为 5543

      • 3、在流量包中可以从域名/IP、指令长度(心跳长度默认 5 秒)、指令结果长度(返回结 果包长度) 、指令执行时间(POST 包与指令包时间间隔)

      • 4、cookie 有一串固定的加密值

    • MSF 特证码
      • 1 、端口号: msf 默认使用 4444 端口作为反向连接端口

      • 2 、数据内容: msf 数据包通常包含特定字符串:("meterpreter" 、"revshell" 等)

    • WINDOWS 安全事件 ID
      • 4624 事件 ID 表示成功登陆;

      • 4625 事件 ID 表示登陆失败的用户;

    • sturts2 命令执行的流量特征
      • sturts2 命令执行数据包或 userage 头里面含有 apache sturts2

    • java 反序列化的流量特征
      • java 反序列化一般 post 包 里面含有 xml 语言写的攻击 payload

    • log4j 和 log4j2 有什么区别
      • log4j 核心 jar 包就一个;log4j2 的核心 jar 包有两个;2、Apache 对 log4j 和 log4j2 在 groupId 上也做了明确的区分,就是 package 的路径不同了。

    • 设备流量非常大, 怎么快速针对这个设备进行处理分析
      • 把设备告警导到 exel 表里面批量分类处理,把攻击 IP 加入到 WAF 或防火墙里面。

    • 监控过程中是否遇到过被攻击成功的事件,是怎么处理的?
      • Owasp top 10 随便说一个,处理方式,把攻击 IP 通过防火墙或 Waf 加入黑名单,接着通知 开发部门修复漏洞。

    • 常用的 Webshell 检测工具
      • D 盾、河马、Web shell Detector 、PHP Malware Finder

    • Liunx 系统中任何权限都能访问的临时文件位置
      • /var/tmp

    • 如何判断是钓鱼邮件
      • 1 、以公司某部门的名义,如安全部、综合部, 使用正式的语气, 内容涉及到账号和密 码等敏感信息, 可能带有链接地址或附件,制造紧张氛围,比如 24 小时内今日下班前完整 账号密码修改。

      • 2 、看发件人 设备上也会报 IP , 上微步查一下 IP 是不是恶意 IP ,邮件的发件人和内容是不是 正常的业务往来

      • 附件放到沙箱里 看看是否有问题

      • 有的邮件会提示你邮件由另一个邮箱代发,或者邮箱地址不是本公司的, 再或者邮箱地 址是 qq 或者 163 等个人邮箱的

    • WAF 和 IPS 的区别
      • IPS 位于防火墙和网络的设备之间,防火墙可以拦截底层攻击行为,但对应用层 的深层 攻击行为无能为力。 IPS 是对防火墙的补充。综合能力更强一些;WAF 是工作在应用层的防 火墙, 主要对 web 请求/响应进行防护。

    • SQL 注入有哪些常见的特征
      • 关键字: select,where、order、union、update、floor、exec、information_schema、 extractvalue 、delete 、insert 、ascii 、table 、from 等

      • sql注入函数: user() 、@@version 、ctxsys.drithsx.sn()等针对双引号、单引号、等号之 类的符号, 可能会进行相关的编码操作, 例如 url 编码,需要注意

    • 木马如果是 cs 生成或木马挂了 cdn 如何找到真实域名
      • 通过 fofa 里面的 title 或找到域名下面的任意一个文件取出他的 hash 再 通过 fofa 跟据 hash 找真实 IP、ping 一个不存在二级域名(开启了泛域名解析 才可以)、在同一服务器上面是否存在二级域名(如果二级域名和 CDN 的域名 在同一服务器也可以找到真实 IP)、在线 DNS 历史记录查找等

    • 读过的技术书籍(学习的途径)
      • 《白帽子讲 web 安全》、《ios 应用逆向工程-第 2 版》、《加密与 解密-第 3 版》、《汇编语言-第 2 版》、《OWASP-MSTG》

    • burpsuite 常用的功能
      • 仪表盘、漏洞扫描、代理、测试器、重发器、定序器、编码器、对比器、插件扩展、项目选项、用户选项等

    • 拿到一个待检测的站或给你一个网站,你觉得应该先做什么
      • 0确定渗透测试注意事项

        • 签合同、授权书、保密协议

        • 通知客户数据库备份、源代码备份

        • 禁止进行登录扫描

        • 降低扫描线程

        • 增删改查操作手工进行

        • 禁止脱裤、跑数据、传shell

        • 执行命令使用无害命令whoami

        • 不能进行dos及ddos攻击

      • 1)信息收集

        • 1.获取域名的 whois 信息,获取注册者邮箱姓名电话等。

        • 2.通过站长之家、明小子、k8、站长之家等查询服务器旁站以及子域名站点,因为主站一般

        • 比较难, 所以先看看旁站有没有通用性的 cms 或者其他漏洞。

        • 3、通过 DNS 域传送漏洞、备份号查询、SSl 证书、APP、微信公众号、暴力破解、DNS 历史记录、 K8 C 段查询、Jsfinder、360 或华为威胁情报、证书序列号获取企业二级域名与 ip。

        • 4 、通过 Nmap 、Wappalyzer、御剑等查看服务器操作系统版本,web 中间件, 看看是否存在已知的漏洞, 比如 IIS ,APACHE,NGINX 的解析漏洞

        • 5.通过 7KB、破壳扫描网站目录结构, 看看是否可以遍历目录, 或者敏感文件泄漏,比如 php探针(phpinfo.php)、管理员备份文件。

        • 6.google hack 进一步探测网站的信息,后台,敏感文件

        • 7、敏感信息收集,如 github 源码、用 7kb、破壳扫源代码泄露(.hg、.git、cvs、svn、.DS_store 源代码泄露)、google hack、接口信息泄露、社工信息泄露、邮箱地址信息收集、网盘搜索、钟馗之眼、天眼查、威胁情报、微步在线等

        • 8、通过 Wappalyzer、御剑工具对网站指纹识别(包括,cms ,cdn,证书等),dns 记录

      • 2)漏洞扫描

        • 1)用 AWVS、APPSCAN、长亭科技的 Xray 等扫描器检测 Web 漏洞, 如 XSS,XSRF,sql 注 入,代码执行,命令执行,越权访问,目录读取,任意文件读取,下载, 文件包含, 远程命令执行,弱口令, 上传, 编辑器漏洞, 暴力破解等

        • 2)用 namp、天镜、Nessus、极光等扫描系统 ip,对扫描出来的高危漏洞进行测试,如 ms08- 067、ms17-010、ms12-020、ms15-035、ms19-0708、永恒之蓝 2 代、cve-2017-7494(samba)、 cve-2014-6271(破壳) 、php cgi 等相关漏洞验证。

      • 3)漏洞利用

        • 利用以上的方式拿到 webshell,或者其他权限

      • 4)权限提升

        • 提权服务器,比如 windows 下 mysql 的 udf 提权, serv-u 提权, windows 低版本的漏洞, 如 iis6,pr,巴西烤肉, linux 脏牛漏洞, linux 内核版本漏洞提权, linux 下的 mysql system 提权以 及 oracle 低权限提权

      • 5) 日志清理

        • 操作系统、中间件、数据库等日志进行清除

      • 6)总结报告及修复方案

  • 17
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值