热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

Linux系统易受网络黑客袭击原因分析

文章标题:Linux系统易受网络黑客袭击原因分析。Linux是中国IT实验室的一个技术频道。包含桌面应用,Linux系统管理,内核研究,嵌入式系统和开源等一些基本分类

  Linux为美国以外的其它国家提供了自主发展操作系统的一条捷径。主要是因为Linux操作系统本身的源代码是公开的,操作系统开发方可以对源代码自由修改并且从新编译成二进制机器码,也就是说用户可以对系统及网络安全的源代码根据自己的需要在进行研究后而进行修改从而轻松拥有自己版本的操作系统。而特别是在网络安全方面,Linux的关于防火墙及其它网络安全协议的源代码公开性使商家能够更加了解操作系统安全的弱点及漏洞所在,通过对源代码的修改对安全进行加强巩固。可是仅仅是源代码公开并不能解决网络不安全的问题。

  由于对源代码进行编译的编译程序GCC及Linux的内核(Kernel)程序本身有诸多弱点,这就造成了躲在防火墙后面的Linux系统程序仍然极其容易受到网络黑客的袭击。

  防火墙仅仅提供了最基本的网络保护

  防火墙的主要目的是封锁不必要的端口,并且对网络通讯数据进行转接过滤。但是只要有开放的端口,网络侵袭便是在所难免。如一般单位网络服务器端口,通常为80号端口,网络服务器主要任务是为用户发送网页因此必须全天开通。而黑客则可以通过浏览网页的HTTP协议轻松通过80号端口穿过防火墙从而对服务器进行攻击。举个例子说,防火墙就好象是一道密集铁丝网,虽然它可以挡住豺狼虎豹的袭击,可是马蜂蚊子还是可以轻松穿过。

  GCC的内在漏洞造成服务器易受攻击

  由于GCC源于网络前时代,因此对不少由网络而衍生的特殊情况毫无准备。GCC有诸多内在弱点,包括输出命令printf对特殊状态检查不足及对参数值变量值范围检查不足等两点,这些两点剧情网会导致内存地址轻易受到突破性侵袭。由GCC加工编译而成的Linux服务器自然就携带了GCC的弱点。这种情况与遗传性基因疾病非常类似,只要是GCC编译成的程序均有此遗传性弱点。黑客经过80号端口通过HTTP协议便可以对组成服务器的printf发送怪异数值或者对其它内存参数值输入超大或者超小值,服务器程序对此特殊状态不知所措便会在内存内胡乱读取内存地址及内容,黑客在获得内存地址后便可对其进行修改从而达到从修改网页内容到瘫痪服务器等各种非法目的。

  GCC是Linux,Unix及BSD系统源代码的主要编译程序 修过计算机编程课程的朋友大多使用过GCC。GCC是对C/C 语言及一些其它语言进行二进制码编译的大型程序。Unix家族有三大独立成员,他们分别是美国电报电话公司(AT&T)的Unix, 伯克莱大学(UC Berkley) 的BSD及Linux。GCC目前是U用友通反记账nix家族操作系统的主要编译工具,全世界范围内由GCC编译而成的现行服务器不计其数,也就是说黑客们可以侵害的对象群非常庞大。

  治标要治本

  GCC的漏洞可以通过对源代码进行保护性修改来弥补。如对网络服务器的源代码中所有的用户输入参数进行参数值范围检测,对超大及超小的输入值不予通过。但是这样的做法会使源代码数量及复杂性大大增加,既费时又难以维护。而对GCC编译器程序的改善则是一个更好的办法。对拥有Linux的单位来说只要用经过安全改善的新版GCC对现有源代码从新编译便可以轻松把安全等级提高到一个新的水平。目前世界上有多个组织及个人正在致力于对GCC改善的研究和开发。美国的Immunix(译:免疫Unix)是目前世界第一家把GCC改进版进行商业化的高科技公司。该公司的GCC改进程序属于GPL协议范围,也就是对编译器GCC修改改善的源代码本身也是公开的。

  网络安全前景不容乐观 虽然目前的几个主要漏洞可以通过对GCC的修改补充来填补,但是由于GCC程序非常庞大,可能存在的潜在漏洞还是很多。俗话说:“道高一尺,魔高一丈”,全世界范围内的黑客正在对GCC及Linux和微软操作系统内核的各种潜在漏洞进行潜心研究,网络安全目前的局面是“易攻难守”,黑客们在发现新漏洞后可以迅速发动大规模攻击,而对漏洞的所在的发现和随后的弥补措施则是相对缓慢的。 笔者认为我国自主操作系统的开发及源代码自主是一件鼓舞的事情,但是对源代码编译程序的学习和了解也同样重要。


推荐阅读
  • 本文深入探讨了分布式文件系统的核心概念及其在现代数据存储解决方案中的应用,特别是针对大规模数据处理的需求。文章不仅介绍了多种流行的分布式文件系统和NoSQL数据库,还提供了选择合适系统的指导原则。 ... [详细]
  • 本文档提供了详细的MySQL安装步骤,包括解压安装文件、选择安装类型、配置MySQL服务以及设置管理员密码等关键环节,帮助用户顺利完成MySQL的安装。 ... [详细]
  • FTP作为一种传统的文件传输协议,广泛用于不同设备间的文件交换。然而,随着网络安全需求的提升及传输效率的要求,选择合适的FTP客户端变得尤为重要。本文将介绍如何利用WinSCP这款强大且安全的工具,实现两台电脑之间的文件高效传输。 ... [详细]
  • 重新审视Kubernetes的必要性
    近期,我注意到不少人误以为我是Kubernetes的推广者。实际上,我只是分享了一些适合用Kubernetes解决的案例。本文旨在探讨Kubernetes的适用场景,并提供一些替代方案。 ... [详细]
  • Cadence SPB 16.5 安装指南与注意事项
    本文提供了详细的 Cadence SPB 16.5 安装步骤,包括环境配置、安装过程中的关键步骤以及常见问题的解决方案。适合初次安装或遇到问题的技术人员参考。 ... [详细]
  • Navicat Premium中MySQL用户管理:创建新用户及高级设置
    本文作为Navicat Premium用户管理系列的第二部分,主要介绍如何创建新的MySQL用户,包括设置基本账户信息、密码策略、账户限制以及SSL配置等。 ... [详细]
  • Golang与微服务架构:构建高效微服务
    本文探讨了Golang在微服务架构中的应用,包括Golang的基本概念、微服务开发的优势、常用开发工具以及具体实践案例。 ... [详细]
  • 本文探讨了六项Java特性,它们虽然强大,但在不当使用时可能会给应用程序带来严重问题。文章基于作者Nikita Salnikov Tarnovski多年的应用性能调优经验,提供了对这些特性的深入分析。 ... [详细]
  • 本文详细探讨了 HAProxy 的基本概念及其与 LVS(Linux Virtual Server)的比较,特别是在内核空间与用户空间的工作差异。文章还深入介绍了 HAProxy 独有的数据结构——弹性二叉树,以及其在高并发场景下的表现。 ... [详细]
  • 深入浅出:Hadoop架构详解
    Hadoop作为大数据处理的核心技术,包含了一系列组件如HDFS(分布式文件系统)、YARN(资源管理框架)和MapReduce(并行计算模型)。本文将通过实例解析Hadoop的工作原理及其优势。 ... [详细]
  • 对于初次购买阿里云服务器的新手用户来说,如何高效地利用服务器资源并成功部署网站是一个重要的课题。本文将详细指导您完成从购买服务器到网站上线的六个关键步骤。 ... [详细]
  • 本文详细解析了Java中流的概念,特别是OutputStream和InputStream的区别,并通过实际案例介绍了如何实现Java对象的序列化。文章不仅解释了流的基本概念,还探讨了序列化的重要性和具体实现步骤。 ... [详细]
  • 惠普战86 Pro G2:新一代商用台式机的性能与设计解析
    惠普战86 Pro G2台式机以其卓越的性能和紧凑的设计,满足了现代商务环境的需求。本文将详细介绍这款商用台式机的各项特点,包括其强大的硬件配置、精美的外观设计以及出色的稳定性和安全性。 ... [详细]
  • 本文详细介绍了在 Windows 7 上安装和配置 PHP 5.4 的 Memcached 分布式缓存系统的方法,旨在减少数据库的频繁访问,提高应用程序的响应速度。 ... [详细]
  • 深入解析轻量级数据库 SQL Server Express LocalDB
    本文详细介绍了 SQL Server Express LocalDB,这是一种轻量级的本地 T-SQL 数据库解决方案,特别适合开发环境使用。文章还探讨了 LocalDB 与其他轻量级数据库的对比,并提供了安装和连接 LocalDB 的步骤。 ... [详细]
author-avatar
null5269
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有