(一) Web漏洞挖掘

针对 Web 系统或软件的进行漏洞挖掘的能力。

在白帽子挖掘的 Web应用漏洞中,比较常见的漏洞形式包括:命令执行、代码执行
、解 析漏洞、XSS、弱口令、文件上传、SQL注入、逻辑漏洞、信息泄露、配置错误、反序列化、 权限绕过等。关于这些漏洞类型的具体含义,参见前述“基础能力”中的“(一)Web漏洞利 用”,这里不再累述。
(二) Web开发与编程

掌握一门或几门的开发与编程语言,是白帽子深入挖掘 Web应用漏洞,分析 Web站点及 业务系统运行机制的重要基础能力。在实战攻防演习中,白帽子最为经常遇到和需要掌握的 编程语言包括:Java、PHP、Python、C/C++、Golang 等。

1) Java

Java 是一种面向对象的计算机编程语言,具有简单性、功能强大、分布式、健壮性、安 全性、平台独立与可移植性、多线程及动态性的特点,经常用于编写桌面应用程序、Web应 用程序、分布式系统和嵌入式
系统应用程序等。
2) PHP

PHP原为 Personal Home Page 的缩写,后更名为 Hypertext Preprocessor,但保留了 人们已经习惯的“PHP”的缩写形式。其含义为:超文本预处理器
,是一种通用开源脚本语 言。PHP主要适用于 Web开发领域,是在服务器端执行的,常用的脚本语言。PHP独特的语 法混合了 C、Java、Perl 以及 PHP 自创的语法,利于学习,使用广泛。
3) Python

Python 是一种跨平台的计算机程序设计语言, 是一个高层次的,结合了解释性、编译 性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(Shell),随着版本的 不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。

4) C/C++

C/C++是一种通用的编程语言,广泛用于系统软件与应用软件的开发。语言具有高效、 灵活、功能丰富、表达力强和较高的可移植性等特点,在程序设计中备受青睐,是当前使用 最为广泛的编程语言。在 Web开发中常用于嵌入式设备的开发。

5) Golang

Golang 语言,简称 Go语言,是由三位 Google 工程师
开发的一种静态强类型、编译型 语言。Go 语言语法与 C 相近,但具有内存安全、垃圾回收、结构形态及 CSP-style 并发 计算等功能。
(三) 编写 PoC或 EXP等利用

PoC,是 Proof of Concept 的缩写,即概念验证,特指为了验证漏洞存在而编写的程序 代码。有时也经常被用来作为 0day
、Exploit(漏洞利用)的别名。
EXP,是 Exploit 的缩写,即漏洞利用代码。一般来说,有漏洞不一定就有 EXP,而有 EXP,就肯定有漏洞。

PoC和 EXP的概念仅有细微的差别,前者用于验证,后者则是直接的利用。能够自主编 写 PoC或 EXP,要比直接使用第三方编写的漏洞利用工具或成熟的漏洞利用代码困难的多。 但对于很多没有已知利用代码的漏洞或 0day漏洞,自主编写 PoC或 EXP就显得非常重要了。

此外,针对不同的目标或在不同的系统环境中,编写 PoC或 EXP的难度也不同。针对 Web应用和智能硬件/IoT 设备等,编写 PoC或 EXP相对容易,属于进阶能力;而针对操作系 统或安全设备编写 PoC或 EXP则更加困难,因此属于高阶能力了。

(四) 社工钓鱼

社工钓鱼,是指利用社会工程学手法,利用伪装、欺诈、诱导等方式,利用人的安全意 识不足或安全能力不足,对目标机构特定人群实施网络攻击的一种手段。社工钓鱼,既是实 战攻防演习中经常使用的作战手法,也是黑产团伙或黑客组织最为经常使用的攻击方式。在 很多情况下,“搞人”要比“搞系统”容易得多。

社工钓鱼的方法和手段多种多样。在实战攻防演习中,最为常用,也是最为实用的技能 主要有四种:开源情报收集、社工库收集、鱼叉邮件和社工钓鱼。其中,前面两个都属于情 报收集能力,而后面两个则属于攻防互动能力。

1) 开源情报收集

开源情报收集能力,是指在公开的互联网信息平台上,合法收集针对目标机构的关键情 报信息的能力。例如,新闻媒体、技术社区、企业官网、客户资源平台等公开信息分享平台 都是开源情报收集的重要渠道。白帽子可以通过开源情报收集,获取诸如企业员工内部邮箱、 联系方式、企业架构、供应链名录、产品代码等关键情报信息。这些信息都可以为进一步的 攻击提供支撑。

开源情报收集是白帽子首要的情报收集方式,其关键在于要从海量网络信息中,找到并 筛选出有价值的情报信息组合。通常情况下,单一渠道公开的机构信息,大多没有什么敏感 性和保密性。但如果将不同渠道的多源信息组合起来,就能够形成非常有价值的情报信息。 当然,也不排除某些机构会不慎将内部敏感信息泄露在了互联网平台上。白帽子在互联网平 台上直接找到机构内部开发代码,找到账号密码本的情况也并不少见。

2) 社工库收集

社工库收集能力,是指针对特定目标机构的社工库信息的收集能力。

所谓社工库,通常是指含有大量用户敏感信息的数据库或数据包。这些敏感信息包括但 不限于,如账号、密码、姓名、身份证号、电话号码、人脸信息、指纹信息、行为信息等。 由于这些信息非常有助于攻击方针对特定目标设计有针对性的社会工程学陷阱,因此将这些 信息集合起来的数据包或数据库,就被称为社会工程学库,简称社工库。

社工库是地下黑产或暗网上交易的重要标的物。不过,在实战攻防演习过程中,白帽子 所使用的社工库资源,必须兼顾合法性问题,这就比黑产团伙建立社工库的难度要大得多。

3) 鱼叉邮件

鱼叉邮件能力,是指通过制作和投递鱼叉邮件,实现对机构内部特定人员有效欺骗的一 种社工能力。

鱼叉邮件是针对特定组织机构内部特定人员的定向邮件欺诈行为,目的是窃取机密数据 或系统权限。鱼叉邮件有多种形式,可以将木马程序作为邮件的附件发送给特定的攻击目标, 也可以构造特殊的、有针对性的邮件内容诱使目标人回复或点击钓鱼网站。鱼叉邮件主要针 对的是安全意识或安全能力不足的机构内部员工。不过,某些设计精妙的鱼叉邮件,即便是 经验的安全人员也难以识别。

4) 社交钓鱼

社交钓鱼能力,是指通过社交软件或社交网站与攻击目标内的成员进行沟通交流,骗取 对方信任并借此收集相关情报信息的能力。社交钓鱼,一般建立在使人决断产生认知偏差的 基础上,具体形式包括但不限于:微信、QQ等社交软件/网站的在线聊天、电话钓鱼、短信 钓鱼等。

社工钓鱼,其实也是网络诈骗活动的主要方法,但以往实战攻防演习中还很少被使用。 但随着防守方能力的不断提升,直接进行技术突破的难度越来越大,针对鱼叉邮件也有了很 多比较有效的监测方法,于是近两年,社交钓鱼方法的使用就开始越来越多了。

参考资料

红蓝攻防构建实战化网络安全防御体系
青藤云安全 2022攻防演练蓝队防守指南

友情链接

CSA 物联网安全设计指南(意见征集稿)

中级的网络安全从业者应该具备如下安全技能相关推荐

  1. 网络安全专业人员应该具备哪些技能

    (一) 系统层漏洞利用与防护 为应对各种各样的网络攻击,操作系统内部有很多底层的安全机制.而每一种安全机制, 都对应了一定形式的网络攻击方法.对于白帽子来说,学习和掌握底层的系统安全 机制,发 现程序 ...

  2. 网络安全工程师需要具备的5个重要技能

    网络安全工程师需要具备的5个重要技能 大数据时代,网络安全非常重要,越来越多的企业也越来越重视网络安全,而网络安全工程师也成为现在需求量比较大的职业,成都也有很多专门做网络安全培训的学校,为这个行业的 ...

  3. 软件测试技术学什么条件,软件测试从业者需要具备哪些技能

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 软件测试工程师需要具备哪些基本能力?相信这些问题是很多刚刚入行学习软件测试的新手们疑惑且急于想要了解的. 为此,小编简单的总结了一些软件测试工程师需要具备 ...

  4. 卡巴斯基:风险无国界 网络安全从业者要与小网民保持一致

    "互联网没有国界,每个国家碰到的问题基本上是类似的.对于网络犯罪这件事,并不针对哪个国家,任何有弱点.有机会的地方,黑客都会去."卡巴斯基公司CEO尤金·卡巴斯基在接受未来网(微信 ...

  5. 网络安全工程师需具备的5个重要技能

    网络安全工程师需具备的5个重要技能 我们都知道,网络安全工程师是高薪职业,而且每个企业都非常重视网络安全,对于该职位的需求量也是非常大的.因此,很多人纷纷报名参加网络安全工程师培训班,以提升自己的职业 ...

  6. 数据分析从业者需具备的核心能力都有哪些?

    很多人都想挤进数据分析这个行业,不单因为数据分析行业是一个十分火热的职业,同时还有十分广阔的就业前景.但是很多人并不知道数据分析究竟是需要做什么,以及数据分析行业需要具备什么能力才能够胜任这项工作,如 ...

  7. 网络安全工作需要具备的10种能力

    网络安全发展不能离开专业的人才,但只有专业能力和职场技能兼备的人,才能了解攻击者的动机和内部运作方式,帮助为企业组织分析和解决各类网络威胁问题.从事网络安全工作需要具备两大类技能:专业技术能力和软件职 ...

  8. 网络安全意识宣贯经典案例,十部网络安全从业者必看影集

    网络安全建设的核心是人员的安全意识,网络建设是技术保障,网络安全体系建设核心建设金句"三分技术,七分管理".由此可见,人员安全意识是基础且重要的一环.在企业网络安全意识培训中也会经 ...

  9. 学习Python必须具备的五大技能!

    用Python完成项目,编写的代码量更少,代码简短可读性强,团队协作开发时读别人的代码速度会非常快,使工作变得更加高效.优雅做开发不再是梦,所以Python是最受欢迎的编程语言之一,学习python的 ...

最新文章

  1. 值得推荐的Idea十二大优秀插件
  2. 8.6 wait和waitpid函数-进程控制
  3. 泰尔指数r语言_还在用Excel算区位基尼系数?用geo.gini吧!
  4. 【转】Java中字符串中子串的查找共有四种方法(indexof())
  5. Boost:测试BOOST_BIND_NO_PLACEHOLDERS的程序
  6. 性能优化实战|使用eBPF代替iptables优化服务网格数据面性能
  7. php链接远程socket,php使用socket获取远程图片
  8. LeetCode 800. 相似 RGB 颜色
  9. Java入门学习思维导图
  10. java把map值放入vector_Thinking in java基础之集合框架
  11. 实战篇:如何建设企业的营销管理和分析平台
  12. java key锁_Java细粒度锁实现的3种方式
  13. [转载]Mysql导出表结构及表数据 mysqldump用法
  14. 【LeetCode 剑指offer刷题】查找与排序题11:Sort Colors
  15. 干掉 Jenkins?顶级 DevOps 工具链大盘点
  16. 华为服务器2288h v3修复RAID,华为RH2288H V3服务器配置RAID(阵列卡LSI SAS3108)
  17. Windows下安装igraph
  18. 第三方百度地图----显示所在位置
  19. CTF·WEB入门之路
  20. 欢祝圣诞——北斗星的爱!

热门文章

  1. ERROR 1045 (28000): ProxySQL Error: Access denied for user 'admin'@'' (using password: NO)
  2. 美国联邦政府如何利用物联网?
  3. linux localtime 线程安全,LocalDate、LocalTime、LocalDateTime常用方法介绍(线程安全)...
  4. U盘启动盘的制作方法
  5. djkk电子书内测价998元 限量3500台
  6. vim c++ ide 拼装
  7. Android记录4--自定义ToggleButton+用SharedPreferences保存用户配置
  8. HTML5挂号,基于SSH的医院在线挂号
  9. 计算机信息技术挂号,利用Access实现自助挂号系统(6页)-原创力文档
  10. 基于IDSS和Machine Learning的零售金融大数据分析(二)