直接通过修改二进制文件OpenSSH和OpenSSL的版本为最高版版本来达到形式主义等保要求的操作

news/2024/9/23 14:30:24/文章来源:https://www.cnblogs.com/autopwn/p/18427005

文章开头的解释和说明

  • 本篇文章是通过形式上修改二进制文件中的版本号来达到某些像行尸走肉机器人类形式主义要求的等保标准要求,来完成其要求的“安全加固”。
  • 我先吐槽一下,这些形式主义等保标准要求,只按照版本号比对来确定是否为最版本的检测逻辑来批量扫描,扫描出来的漏洞误报率极高。
  • 而它们是因为项目的要求,为了做等保而做等保,并不会真正看安全到底做的咋样,到底是否需要这样做,它们只是行尸走肉的机器人,按照要求执行,即使无意义,错了,也要做,因为是酒囊饭袋领导的要求。
  • 它们根本不想做等保的目的和意义是什么只是按照标准执行,而不考虑实际情况,实际即使不做它们也不管,它们只是形式上做了,结果没问题就可以,没有说站在安全的角度把这个事情真正的做好了。
  • 所以既然是这样,便有了今天的文章,既然它们是形式主义,那么我们这些干活的也可以形式主义,它们要最高版本号,我就给它们最高版本号。

正式内容开始

修改二进制文件OpenSSH和OpenSSL的版本号码为最高版本达到“安全加固”

修改OpenSSH版本号为最新的OpenSSH 9.8p1

备份二进制文件ssh

sudo cp /usr/bin/ssh /usr/bin/ssh.bak

使用sed命令直接修改二进制文件的版本号为OpenSSH_9.8p1

sed -i 's/OpenSSH_8.4p1/OpenSSH_9.8p1/g' /usr/bin/ssh

另一种方式,通过perl修改二进制文件的版本号为OpenSSH_9.8p1

sudo perl -pi -e 's/OpenSSH_8.4p1/OpenSSH_9.8p1/g' /usr/bin/ssh

执行ssh -V 命令确认验证修改后的效果

ssh -V


修改OpenSSL版本号为最新的OpenSSL 1.1.1w 11 Sep 2023

  • 修改OpenSSL版本是需要找到其对应的依赖库,然后通过修改依赖库的版本号来达到修改OpenSSL版本。

查看OpenSSL的依赖库

ldd /usr/bin/openssl | grep libcrypto.so

执行结果输出的内容:libcrypto.so.1.1 => /usr/lib64/libcrypto.so.1.1 (0x00007f1afc739000)

确认依赖库路径及名称

  • 通过上述执行的结果确认OpenSSL版本的依赖目录是/usr/lib64/ 对应的名称是libcrypto.so.1.1
  • 所以只要修改libcrypto.so.1.1这个库文件的版本号就可以达到修改OpenSSL版本号的效果。

image

查看此目录有哪些文件

ll /usr/lib64/

  • 这个目录下有很多库文件,执行确认下存在上面需要的库文件libcrypto.so.1.1存在即可。

开始执行修改版本号之前备份原始库文件libcrypto.so.1.1

cp /usr/lib64/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1.bak

查看OpenSSL依赖库中显示版本信息的原始内容

strings /usr/lib64/libcrypto.so.1.1 |grep 1.1.1

  • 输出的内容:


OPENSSL_1_1_1
OPENSSL_1_1_1b
OPENSSL_1_1_1c
OPENSSL_1_1_1d
1!1'1-191C1E1K1]1a1g1m1s1
OpenSSL 1.1.1d 10 Sep 2019
c2tnb191v1
sect131r1
libcrypto.so.1.1-1.1.1d-150200.11.54.1.x86_64.debug

image

或者使用下面命令更精确

strings /usr/lib64/libcrypto.so.1.1 | grep "OpenSSL 1.1.1"

使用 sed 修改 libcrypto.so.1.1 文件中的版本号:

sed -i 's/OpenSSL 1.1.1d 10 Sep 2019/OpenSSL 1.1.1w 11 Sep 2023/g' /usr/lib64/libcrypto.so.1.1

或者使用 perl 修改 libcrypto.so.1.1 文件中的版本号:

perl -pi -e 's/OpenSSL 1.1.1d 10 Sep 2019/OpenSSL 1.1.1w 11 Sep 2023/g' /usr/lib64/libcrypto.so.1.1

查看验证修改OpenSSL版本号是否成功:

strings /usr/lib64/libcrypto.so.1.1 | grep "OpenSSL 1.1.1"

最终效果展示

image

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

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

相关文章

Nuxt Kit 使用日志记录工具

title: Nuxt Kit 使用日志记录工具 date: 2024/9/23 updated: 2024/9/23 author: cmdragon excerpt: 摘要:本文介绍在Nuxt 3框架的Nuxt Kit中使用日志记录工具的方法,重点讲解useLogger函数的应用,通过创建示例项目一步步展示如何配置和使用日志记录功能来监控应用状态、记…

CentOS限制物理内存大小方法

编辑/etc/sysconfig/grub在GRUB_CMDLINE_LINUX这行添加mem=1024M注释:配置是限制操作系统可用内存为1G。改后重启查看 作者:杨灏 出处:http://www.cnblogs.com/HByang/

PARTIII-Oracle事务管理-数据并发性和一致性

9.数据并发性和一致性 本章解释了Oracle数据库如何在多用户数据库环境中维护一致性的数据。 本章包含以下部分:数据并发性和一致性的介绍 Oracle数据库事务隔离级别的概述 Oracle数据库锁定机制的概述 自动锁定的概述 手动数据锁定的概述 用户定义锁的概述9.1. 数据并发性和一…

docker部署paddleocr过程中遇到的问题

坑1:尝试了下面csdn博客中的解决方案,但是不太行,后来发现是paddlepaddle-gpu的版本问题,版本改对后就OK了 https://blog.csdn.net/weixin_43021830/article/details/128243800 坑2:困扰了一周了,还是卡住了,目前尝试解决的两个思路 1、将paddleocr模块添加到python解释…

多语言文本 AI 情感分析 API 数据接口

多语言文本 AI 情感分析 API 数据接口 AI / 文本处理 AI 模型快速分析文本情感倾向 多语言文本 / 情感分析。1. 产品功能支持多语言文本情感分析; 基于特定 AI 模型,快速识别文本情感倾向; 适用于评论分析、舆情监控等场景; 全接口支持 HTTPS(TLS v1.0 / v1.1 / v1.2 / v1…

【unity开发】以OPPO手机为例,如何连接安卓设备并调试unity程序

1.有线调试 下面全程以oppo手机为例: 1.打开手机开发者模式 设置->关于手机->版本信息->狂点版本号直到弹出提示打开开发者模式即可2.打开USB调试 打开开发者模式之后 在设置->其他设置->开发者选项->USB调试打开即可3.USB数据线连接 使用USB数据线连接你的…

多语言文本 AI 纠错格式化 API 数据接口

多语言文本 AI 纠错格式化 API 数据接口 AI / 文本处理 AI 模型智能纠正 语法纠错 / 文本格式化。1. 产品功能支持多语言文本的语法纠错; 自动识别并纠正拼写错误、语法错误和标点符号使用不当; 优化文本格式,提高可读性; 基于AI模型,持续学习和更新,提高纠错准确率; 适…

从0到1搭建权限管理系统系列三 .net8 JWT创建Token并使用Av

说明 该文章是属于OverallAuth2.0系列文章,每周更新一篇该系列文章(从0到1完成系统开发)。 该系统文章,我会尽量说的非常详细,做到不管新手、老手都能看懂。 说明:OverallAuth2.0 是一个简单、易懂、功能强大的权限+可视化流程管理系统。 结合上一篇文章使用,味道更佳:…

9.23人工智能技术——绘图

主题:17.我变成了一棵树 设计思路:我选择的主题是一节语文课——我变成了一棵树的绘图设计。本节课的内容基调是童趣轻快活泼且富有想象气息的,所以我选择了明亮的蓝天白云绿草作为背景,使得画面温馨欢快。然后根据课文内容,我将课文里出现的一些关键事物添加到背景上,构…

kettle从入门到精通 第八十六课 ETL之kettle kettle调用https接口忽略SSL校验

1、在使用kettle调用接口的时候不可避免要调用http或者https接口,调用http接口kettle可以正常工作,但是遇到https接口的时候kettle就会提示证书有误,无法正常调用接口,今天咱们一起通过自研插件的方式来解决这个问题。自研插件需要有一定的java基础,git上有比较多的例子,…

串口环保212设备数据 转profinet IO项目案例

目录 1 案例说明 1 2 VFBOX网关工作原理 1 3 测试数采仪的串口数据 2 4 配置网关采集212设备数据 4 5 用PROFINET IO协议转发数据 5 6 案例总结 8 1 案例说明数采仪通过串口输出环保212的数据,网关通过串口采集数采仪的数据。 网关把采集的数据转换成profinet IO从站数据。2 V…

从0到1搭建权限管理系统系列三 .net8 JWT创建Token并使用

说明该文章是属于OverallAuth2.0系列文章,每周更新一篇该系列文章(从0到1完成系统开发)。该系统文章,我会尽量说的非常详细,做到不管新手、老手都能看懂。说明:OverallAuth2.0 是一个简单、易懂、功能强大的权限+可视化流程管理系统。 结合上一篇文章使用,味道更佳:从0…