aiset
  • 首页
  • 所有文章

Posts

December 30, 2022

2022年终总结:突破与成长的一年

又到了年末,回顾这一年,经历了不少,也收获了很多。作为一名安全工程师,今年在技术上有了不少突破,同时也更清晰地认识到了自己的不足。

技术成长

今年主要在以下几个方面有了深入:

  1. 容器安全

    • 深入研究了Docker和K8s的安全机制
    • 完成了几个容器逃逸漏洞的分析复现
    • 参与编写了公司容器安全基线
  2. 渗透测试

    • 重点突破了Web应用安全测试
    • 掌握了几个不错的自动化工具
    • 完成了3个重要项目的渗透测试
  3. 安全架构

    • 设计并实施了一套完整的堡垒机方案
    • 优化了公司的WAF规则配置
    • 建立了比较完善的资产管理系统

踩过的坑

说实话今年也踩了不少坑:

  1. 一开始在做安全架构时,过分追求"完美"方案,结果方案太重太复杂,实施起来困难重重。后来明白了,安全和业务的平衡才是关键。

  2. 在做渗透测试时,有次太依赖工具了,错过了一些需要手工测试才能发现的漏洞。这件事让我重新思考了自动化与手工测试的平衡。

明年的计划

展望2023年,给自己定了几个目标:

  1. 技术深化

    • 深入研究云原生安全
    • 提升代码审计能力
    • 学习AI安全相关知识
  2. 实践目标

    • 至少完成一个开源工具的开发
    • 争取找到一个高危漏洞
    • 写8-10篇技术博客分享
  3. 能力拓展

    • 考个CISSP证书
    • 学习一下威胁情报分析
    • 提升下应急响应能力

一些思考

这一年最大的感悟是:技术确实重要,但思维方式可能更重要。安全不是单纯的技术问题,而是要考虑业务、考虑效率、考虑成本。

明年打算在深入技术的同时,也要多看看安全架构和管理方面的东西。毕竟越往后走,越发现安全工作是个系统工程。

最后,明年除了技术上的提升,还要保持学习的激情。这个圈子里,技术更新太快,不学习就会被淘汰。好在遇到了不少志同道合的朋友,一起学习、一起进步。

希望明年这个时候再写总结的时候,能看到一个更强大的自己。


写这篇总结的时候,翻看了下今年的项目记录和学习笔记,还挺感慨的。继续加油吧!

read more
November 25, 2022

记一次诡异的Docker容器CPU占用过高问题排查

这周遇到了一个有意思的问题:一个运行了大半年的 Docker 容器突然 CPU 占用飙升到 90% 以上。本以为是个简单的问题,结果排查下来却发现了一些有趣的细节,在这里和大家分享下。

问题现象

事情是这样的:周三早上收到监控报警,说是测试环境的一个 Docker 容器 CPU 使用率异常。登上去一看,好家伙,CPU 稳定在 95% 左右。这个容器跑的是我们的 Java 后端服务,平时 CPU 也就 20%-30%,这次直接起飞了。

排查过程

首先用 top 命令看了下进程状态,发现是 Java 进程占用 CPU 特别高。第一反应是不是发生了内存泄漏,导致频繁 GC。

# 查看具体线程情况
top -Hp <pid>

通过这个命令发现,CPU 主要被一个线程占用。接着用 jstack 导出了线程栈:

jstack <pid> > thread_dump.txt

查看线程栈时发现了问题所在:有一个处理缓存的线程在疯狂执行本地缓存的过期检查,而且是在死循环里。

深入代码一看,原来是前段时间为了优化缓存,加了个本地缓存的二级缓存机制。但是在设置缓存过期时间的地方,单位用错了 - 把分钟写成了毫秒。导致缓存项在创建后立即就过期了,然后触发重新加载,形成了恶性循环。

解决方案

  1. 紧急修复:先把时间单位改对
  2. 增加了缓存相关的监控指标
  3. 在代码里加了单位转换的工具类,避免手写时间单位转换

教训总结

  1. 时间单位这种细节真的很容易出问题,特别是在多人协作的项目中
  2. 本地缓存虽然能提升性能,但如果处理不当反而会造成更大的问题
  3. 监控报警体系很重要,要不是有监控,可能到用户反馈系统慢了才会发现

后续改进

这次事件后,我们还做了一些改进:

  1. 在代码规范中明确要求使用 TimeUnit 来处理时间单位
  2. 为所有缓存模块添加了更细粒度的监控
  3. 写了一个缓存性能测试套件,确保缓存模块在各种场景下的表现

说实话这个问题虽然看起来很低级,但确实让我对缓存的实现细节有了更深的认识。也再次证明了,在性能优化时,我们不能只关注优化本身,还要考虑可能带来的副作用。

另外推荐一个命令行工具 arthas,它对排查 Java 应用问题特别有帮助,比普通的 jstack、jmap 要强大得多。有兴趣的同学可以去看看。


每次遇到这种问题都是既烦恼又庆幸:烦恼是debug花了不少时间,庆幸是每次都能学到新东西。

read more
October 22, 2022

新的开始 - aiset.top 建站小记

终于,经过一番折腾,我的个人博客 aiset.top 正式上线了!

作为一名技术爱好者,一直都想要有一个属于自己的独立博客空间。在对比了多个建站方案后,最终选择了 Hugo 作为博客框架,主要看中了它简洁、高效、易于维护的特点。

为什么选择 Hugo?

  • 静态站点生成器,无需数据库
  • 构建速度快,资源占用小
  • Markdown 写作体验好
  • 主题丰富,可定制性强

目前使用的是 Hugo 的 Ananke 主题,这个主题简约大方,完全满足我当前的需求。后续会根据实际使用情况,逐步添加新的功能模块。

后续计划

未来我会在这里分享一些技术心得、学习笔记和随想。欢迎大家多多交流,一起学习进步!


PS: 本站于2022年10月22日正式启用,希望能够坚持写作,积累分享。

read more
  • ««
  • «
  • 1
  • 2
  • »
  • »»
© 2025

服务器由 yxvm友情提供