自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(104)
  • 收藏
  • 关注

原创 基于JSP+Servlet+Layui实现的博客系统

这是一个使用 Java 和 JSP 开发的博客系统,并使用 Layui 作为前端框架。> 它包含多种功能,比如文章发布、评论管理、用户管理等。> 它非常适合作为 Java 初学者的练习项目。

2024-09-25 16:06:10 444

原创 SpringBoot自定义网站导航

这是一个基于 **Spring Boot** 构建的简单网站导航,适用于JAVA初学者。> 使用了 **Spring Boot**、**Spring Security**、**Thymeleaf**、**Spring Data JPA**、**Spring Data REST** 框架。> 数据库使用了基于内存的 **H2数据库**,无需单独安装,随Spring Boot启动。- 包含用户登录和注册功能。- 用户可以添加网页链接并为其打标签。链接也会根据给定链接的网站数据抓取进行推荐。

2024-09-25 09:57:01 216

原创 JSP BBS论坛管理系统

这是一个基于 **Java**,**Jsp** 开发的BBS论坛管理系统。> 支持多用户注册、登录、发帖、回帖等功能。> 项目采用了 **Maven** 进行依赖管理,**Tomcat** 作为应用服务器,**MySQL** 作为数据库进行数据存储。

2024-09-24 15:03:40 406

原创 Swing模拟银行柜台系统

这是一个基于JavaSwing实现的模拟银行柜台系统。> 具有管理员、柜员、客户三种登录角色。> 支持开户、注册、存取款、转账、汇款、账单查询等功能。> 本项目适合JAVA初学者作为入门学习项目。

2024-09-24 10:13:36 287

原创 SpringBoot+Thymeleaf租房管理系统

这是一个基于SpringBoot+Thymeleaf+Bootstrap实现的租房管理系统。> 功能比较完善,包括用户注册/登录、房源登记、账单费用配置、统计报告等功能。> 模拟真实使用环境,包括了自然人与法人的身份证明录入、房产证信息录入、通过邮件推送月度账单、账单统计报表生成等。> 全响应式布局,可兼容移动端,以下是项目的详细介绍。

2024-09-23 17:45:23 765

原创 SpringBoot简易商品管理系统

这是一个基于SpringBoot+Thymeleaf实现的简易商品管理系统。> 包含基本的登录/注册与商品管理功能。> 界面简洁美观,代码结构清晰,适用于JAVA初学者在此基础上进行二次开发。

2024-09-23 10:17:08 747

原创 SpringBoot+Thymeleaf图书管理系统

这是一个基于SpringBoot+Thymeleaf实现的图书管理系统。> 包含图书管理、作者管理、分类管理、出版社管理等功能。> 界面简洁美观,代码结构清晰,完成度比较高,适用于JAVA初学者作为参考项目。

2024-09-20 15:44:47 406

原创 JSP校园资讯网站前台+后台管理

这是一个基于JSP实现的校园资讯网站。> 包含给学生/家长浏览的前台网站和给管理员/老师的后台管理系统。> 界面简洁,功能丰富,完成度比较高,适用于JAVA初学者作为参考项目。

2024-09-20 11:16:53 624

原创 SpringBoot+thymeleaf竞赛报名系统

这是一个基于Spring Boot的后台管理系统。> 使用了Mybatis Plus作为持久层框架,EasyExcel用于Excel操作,Thymeleaf作为前端模板引擎。> 界面简洁,功能丰富,完成度比较高,适用于JAVA初学者作为参考项目。

2024-09-19 16:10:07 699

原创 基于JavaSwing实现的酒店管理系统

欢迎使用酒店管理系统!> 这是一个基于Java Swing开发,用于管理酒店预订、房间、订单和用户信息的系统。> 适用于JAVA初学者作为入门学习项目。

2024-09-19 11:18:33 520

原创 攻防演练篇:攻防演练场景中面临的常见加密威胁-HTTP隐蔽隧道

在网络安全领域,隐蔽隧道是一种基于主流常规协议将恶意流量伪装成正常通信起到夹带偷传数据、下发控制指令等作用,同时对数据进行加密以最大限度的规避网络安全设备检测的传输技术。

2024-09-14 17:06:09 979

原创 【攻防演练篇】suo5隧道工具加密流量分析

在全双工模式下为了提高连接性能,利用 HTTP/1.1 的 Transfer-Encoding: Chunked 模式来发送 Body,如果发送端不主动关闭 Body,在获取到服务端响应后可以继续发送 Body 数据,继续获取服务器响应。在未魔改的情况下,在suo5与webshell脚本建立连接时,测试连接是否通畅的请求报文中 Content-Type 的值为 application/plain。使用python编写解码脚本后可以看出,在经过解密后,加密数据的实际内容为ssh协议的连接报文。

2024-09-12 16:31:08 646

原创 利用SSH加密实现的HTTP隧道分析与检测

Chisel是一个快速稳定的TCP/UDP隧道工具,该工具基于HTTP实现,并通过SSH加密保证通信安全。Chisel可以进行端口转发、反向端口转发以及SOCKS流量代理,使用GO语言编写,具备较好的跨平台特性。该工具的主要用于绕过防火墙,也可以用于向网络中提供安全终端节点。实战对抗中,攻击者获得资产控制权后,需要建立失陷资产与外部控制端的通信通道,为了有效躲避IPS、WAF、全流量检测等安全设备,常使用加密通道、隐蔽隧道等。

2024-09-05 16:22:09 806

原创 加密C2框架Mythic流量分析

Mythic是一个多人、跨平台的红队行动框架,使用了python3、docker、docker-compose和Web浏览器UI技术构建。它支持多种通信协议,包括HTTP、TLS等,并且在Beacon与Mythic服务器之间的通信通常采用加密来保障安全性。Mythic的核心原理在于模拟和模仿攻击者在渗透测试和红队操作中的行为。它提供了一个类似于C2(命令与控制)的基础设施,允许攻击者远程控制目标系统、执行命令、上传和下载文件等。通过安装不同的Payload框架,可以生成针对不同系统和协议的Beacon。

2024-09-03 16:05:23 759

原创 Play勒索软件组织加密流量分析

近年来,勒索软件组织的作业链条逐渐从“加密数据->收取赎金”转变到“数据窃取->加密数据->暗网披露窃取数据大小和内容描述->收取赎金”[1]。勒索软件组织在获取到受害者的访问权限后,不会立刻进行勒索,而是进行横向移动、数据窃取等操作,从受害环境中窃取大量敏感、机密信息,用于二次勒索。当受害者不愿意支付赎金时,攻击者会在网络上进行数据泄露来威胁受害者支付赎金。这种攻击模式被称为“双重勒索”。为了达到数据窃取这一目的,多数勒索软件组织采用商业工具或开源工具,少数勒索软件组织选择自研工具。

2024-08-29 10:24:27 1074

原创 基于深度学习技术的APT加密流量检测与分类检测方案

近年来APT攻击的案例屡见不鲜,给国家、企业以及个人的利益造成极大威胁。随着流量加密技术的不断成熟,许多APT组织倾向于将流量加密后进行传输,从而保护传输内容。由于加密流量的实际载荷已被加密,故采用原始的流量检测方法,如深度包检测等方法,对于加密流量而言基本无效。业内尝试采用机器学习算法,通过专家经验手工提取特征的方法进行检测,但该方法存在耗时多、容易出现人为错误等问题,因此,转向深度学习技术,对流量自身进行表征学习,从而提取深度特征进行检测,具有比传统机器学习更优异的检测能力。

2024-08-28 16:21:38 867

原创 证券行业加密业务安全风险监测与防御技术研究

摘要:解决证券⾏业加密流量威胁问题、加密流量中的应⽤⻛险问题,对若⼲证券⾏业的实际流量内容进⾏调研分析, 分析了证券⾏业加密流量⾯临的合规性⻛险和加密协议及证书本⾝存在的⻛险、以及可能存在的外部加密流量威 胁,并提出防御策略和措施。关键字:证券加密业务、加密应用、加密流量、商用密码安全评估、加密风险、加密威胁、监测防御数据爆发式增长的DT(Data technology)时代,加密技术是数据传输的重要保护手段。随着互联网和企业内部流量场景的加密化趋势快速增长,证券行业也面临着更加迫切的加密需求。证券行业涉及

2024-08-27 09:33:36 1339

原创 Websocket协议代理隧道加密流量分析与检测

攻防场景下,Websocket协议常被用于代理隧道的搭建,攻击者企图通过Websocket协议来绕过网络限制,搭建一个低延迟、双向实时数据传输的隧道。当前,主流的支持Websocket通信代理的工具有:FRP、wsp、wstunnel和TurboTunnel等。以wstunnel工具为例,当wstunnel使用Websocket协议搭建隧道代理相关流量时,客户端使用HTTP Upgrade 机制来完成协议的握手阶段。当完成握手后,客户端和服务端就使用Websocket协议的数据格式来进行全双工的通信。

2024-08-26 10:35:03 563

原创 活跃窃密木马TriStealer加密通信分析

从2024年4月起,它采用了ZIP和RC4结合的方式对数据进行加密,这一加密方案在7月份进行了升级,引入了Base64编码作为额外的步骤,形成了ZIP+Base64+RC4的复合加密流程。TriStealer的RC4加密密钥设计独特,由固定的6字节样本硬编码字符串和随机生成的字符串组成,为加密通信提供了安全性和混淆性。4月份的TriStealer使用“ZIP+RC4”对数据进行加密,7月份,TriStealer对加密方式进行了升级,开始采用“ZIP+Base64+RC4”的方式进行加密。

2024-08-23 09:30:35 393

原创 海莲花活跃木马KSRAT加密通信分析

为了隐藏通信特征,KSRAT在心跳包中填充了随机生成的数据,使得载荷长度随机变化,但其并未更改XOR密钥和数据结构,导致心跳包请求体中的特征仍然显著,可直接通过特征值进行检测。样本执行后,使用HTTP协议与服务器进行通信,每隔30秒左右向服务器发送心跳包,心跳包构造为“8字节通信标识符+13字节固定数据+8字节随机数据长度+随机数据+9字节固定数据”。XOR算法加密的指令包由“8字节通信标识符+8字节固定数据+4字节控制指令+1字节数据+8字节随机数据长度+随机数据+9字节固定数据”组成。

2024-08-21 10:56:32 914

原创 SpringBoot 后端接口规范

一个后端接口大致分为四个部分组成:接口地址(url)、接口请求方式(get、post等)、请求数据(request)、响应数据(response)。虽然说后端接口的编写并没有统一规范要求,而且如何构建这几个部分每个公司要求都不同,没有什么“一定是最好的”标准,但其中最重要的关键点就是看是否规范。一个接口一般对参数(请求数据)都会进行安全校验,参数校验的重要性自然不必多说,那么如何对参数进行校验就有讲究了。一般来说有三种常见的校验方式,我们使用了最简洁的第三种方法业务层校验。

2024-08-20 10:27:04 796

原创 入门 - Vue中使用axios原理分析及解决前端跨域问题

是Vue创建者主推的请求发送方式,因其简单的配置与良好的性能被前端爱好者所喜爱。众所周知,在进行网页设计时经常需要从后端拿数据,在Web应用初期会将整个页面或者文档直接拿过来,随着Web应用的发展,人们对性能的不断提升,逐渐向无页面刷新从后端获取数据,而axios就是其中一种新兴、火热的方式。在学习Vue中使用axios时,不需要太过于了解请求的发送过程,但需要对各种请求方式有一个大致的认识。本文将会从0到1的介绍vue中如何使用axios,并结合项目实例加深大家印象。

2024-08-19 17:40:00 2428

原创 入门 - Vue中vue-router实现原理详解

vue-router是Vue官方推出的路由管理器,它和vue.js是深度集成的,主要用于管理URL,实现URL和组件的对应,以及通过URL进行组件之间的切换,通过改变URL,在不重新请求页面的情况下,更新页面视图,从而使构建单页面应用变得更加简单。这2个方法有个共同的特点:当调用他们修改浏览器历史栈后,虽然当前url改变了,但浏览器不会立即发送请求该url,这就为单页应用前端路由,更新视图但不重新请求页面提供了基础。方法不同之处在于,它并不是将新路由添加到浏览器访问历史的栈顶,而是替换掉当前的路由。

2024-08-19 09:22:35 1003

原创 入门 - vue中v-model的实现原理和完整用法详解

v-model是vue的双向绑定的指令,能将页面上控件输入的值同步更新到相关绑定的data属性,也会在更新data绑定属性时候,更新页面上输入控件的值。在view层,model层相互需要数据交互,即可使用v-model。inputselect等)可以简写为v-model,因为v-model默认收集的就是value值。

2024-08-16 15:49:18 1540

原创 入门 - vue整个过程的生命周期详解

可以在这加个loading事件;created:在这结束loading,还做一些初始化,实现函数自执行;mounted: 在这发起后端请求,拿回数据,配合路由钩子做一些事情;: 你确认删除vue实例了吗?destoryed:当前实例已被销毁,解绑相关指令和事件监听器。

2024-08-16 11:08:48 928

原创 基础 - 前端知识体系详解

CSS预处理器定义了一种新的语言,其基本思想是用一种专门的编程语言,为CSS增加了一些编程的特性,将CSS作为目标生成文件,然后开发者就只要使用这种语言进行CSS的编码工作。转化成通俗易懂的话来说就是"用一种专门的编程语言,进行Web页面样式设计,再通过编译器转化为正常的CSS文件,以供项目使用"

2024-08-15 15:54:59 1605 1

原创 Collection - LinkedList 源码解读

LinkedList同时实现了List接口和Deque接口,也就是说它既可以看作一个顺序容器,又可以看作一个队列(Queue),同时又可以看作一个栈(Stack)。这样看来,LinkedList简直就是个全能冠军。当你需要使用栈或者队列时,可以考虑使用LinkedList,一方面是因为Java官方已经声明不建议使用Stack类,更遗憾的是,Java里根本没有一个叫做Queue的类(它是个接口名字)。

2024-08-15 09:56:06 572

原创 Collection - ArrayList 源码解析

ArrayList实现了List接口,是顺序容器,即元素存放的数据与放进去的顺序相同,允许放入null元素,底层通过数组实现。除该类未实现同步外,其余跟Vector大致相同。每个ArrayList都有一个容量(capacity),表示底层数组的实际大小,容器内存储元素的个数不能多于当前容量。当向容器中添加元素时,如果容量不足,容器会自动增大底层数组的大小。前面已经提过,Java泛型只是编译器提供的语法糖,所以这里的数组是一个Object数组,以便能够容纳任何类型的对象。

2024-08-14 14:26:54 576

原创 Collection - PriorityQueue 源码解读

前面以Java ArrayDeque为例讲解了Stack和Queue,其实还有一种特殊的队列叫做PriorityQueue,即优先队列。优先队列的作用是能保证每次取出的元素都是队列中权值最小的(Java的优先队列每次取最小元素,C++的优先队列每次取最大元素)。这里牵涉到了大小关系,元素大小的评判可以通过元素本身的自然顺序(natural ordering),也可以通过构造时传入的比较器(Comparator,类似于C++的仿函数)。

2024-08-14 10:22:18 687

原创 Map - Java Map 集合遍历详解

Map是java中的接口,Map.Entry是Map的一个内部接口。Map提供了一些常用方法,如keySet()、entrySet()等方法,keySet()方法返回值是Map中key值的Set集合;entrySet()的返回值也是返回一个Set集合,此集合的类型为。Map.Entry是Map声明的一个内部接口,此接口为泛型,定义为Entry。它表示Map中的一个实体(一个key-value对)。接口中有getKey(),getValue方法。

2024-08-13 15:42:05 299

原创 Map - HashSet&HashMap 源码解读

JDK7中HashMap底层的数据结构为数组 + 链表,JDK1.8中HashMap底层的数据结构为数组(table数组) + 链表(Node) + 红黑树(Node链表转换为树),并且HashMap的put方法没有同步(synchronized),因此HashMap是一个线程不安全的集合,HashSet底层也是使用的HashMap。

2024-08-13 09:56:59 705

原创 JUC锁-AQS源码解读

分析类,首先就要分析底层采用了何种数据结构,抓住核心点进行分析,经过分析可知,AbstractQueuedSynchronizer类的数据结构如下说明:AbstractQueuedSynchronizer类底层的数据结构是使用双向链表,是队列的一种实现,故也可看成是队列,其中Sync queue,即同步队列,是双向链表,包括head结点和tail结点,head结点主要用作后续的调度。而Condition queue不是必须的,其是一个单向链表,只有当使用Condition时,才会存在此单向链表。

2024-08-12 11:16:47 933

原创 SpringBoot集成RabbitMQ

介绍RabbitMQ之前先说一下AMQP协议:AMQP,即Advanced Message Queuing Protocol(高级消息队列协议),一个提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同的开发语言等条件的限制。Erlang中的实现有RabbitMQ等。AMQP 其实和Http一样 都是一种协议, 只不过 Http是针对网络传输的, 而AMQP是基于消息队列的。

2024-03-27 17:11:14 1283

原创 Spring Cloud - Openfeign 实现原理分析

OpenFeign 是一个声明式 RESTful 网络请求客户端。OpenFeign 会根据带有注解的函数信息构建出网络请求的模板,在发送网络请求之前,OpenFeign 会将函数的参数值设置到这些请求模板中。虽然 OpenFeign 只能支持基于文本的网络请求,但是它可以极大简化网络请求的实现,方便编程人员快速构建自己的网络请求应用。

2024-03-26 15:00:19 809

原创 SpringCloud - 架构体系详解

Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。

2024-03-25 10:54:59 747

原创 Elasticsearch面试系列-03

副本是分片的完整拷贝,副本的作用是增加了查询的吞吐率和在极端负载情况下获得高可用的能力。副本有效的帮助处理用户请求。

2024-03-22 14:50:50 1291

原创 Elasticsearch面试系列-02

1)根据业务增量需求,采取基于日期模板创建索引,通过roll over API滚动索引;2)使用别名进行索引管理;3)每天凌晨定时对索引做force_merge操作,以释放空间;4)采取冷热分离机制,热数据存储到SSD,提高检索效率;冷数据定期进行shrink操作,以缩减存储;5)采取curator进行索引的生命周期管理;5)仅针对需要分词的字段,合理的设置分词器;6)Mapping阶段充分结合各个字段的属性,是否需要检索、是否需要存储等。

2024-03-21 16:42:38 1100

原创 Elasticsearch面试系列-01

ES是一种开源、RESTful、可扩展的基于文档的搜索引擎,它构建在Lucene库上。用户使用Kibana就可以可视化使用数据,同时Kibana也提供交互式的数据状态呈现和数据分析。Apache Lucene搜索引擎基于JSON文档来进行搜索管理和快速搜索。

2024-03-20 16:03:43 1062

原创 MyBatis面试系列-02

接口绑定是指在MyBatis中任意定义接口,然后把接口里面的方法和SQL语句绑定,我们直接调用接口方法就可以,这样比起原来了SqlSession提供的方法我们可以有更加灵活的选择和设置。接口绑定有两种实现方式:一种是通过注解绑定,就是在接口的方法上面加上@Select、@Update等注解,里面包含Sql语句来绑定;另外一种就是通过xml里面写SQL来绑定,在这种情况下,要指定xml映射文件里面的namespace必须为接口的全路径名。

2024-03-19 15:14:15 1121

原创 MyBatis面试系列-01

Hibernate通过它强大的映射结构和HQL语言,大大降低了对象与数据库(oracle、mySQL等)的耦合性,而MyBatis由于需要手写SQL,因此与数据库的耦合性直接取决于程序员写SQL的方法,如果SQL不具通用性而用了很多某数据库特性的SQL语句的话,移植性也会随之降低很多,成本很高。如:order by #{userId},如果传入的值是1,那么解析成sql时的值为order by "1",如果传入的值是userId,则解析成的sql为order by "userId"。

2024-03-18 11:36:58 1093 2

密码学基础和PKI体系.pptx

适用初学了解密码技术人员

2023-10-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除