CN102891854B - 一种云端服务器安全控制方法 - Google Patents

一种云端服务器安全控制方法 Download PDF

Info

Publication number
CN102891854B
CN102891854B CN201210390034.7A CN201210390034A CN102891854B CN 102891854 B CN102891854 B CN 102891854B CN 201210390034 A CN201210390034 A CN 201210390034A CN 102891854 B CN102891854 B CN 102891854B
Authority
CN
China
Prior art keywords
cloud server
system call
white list
shared library
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210390034.7A
Other languages
English (en)
Other versions
CN102891854A (zh
Inventor
叶耀荣
李景洙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Yunbiao Bureau Network Technology Co.,Ltd.
Original Assignee
GUANGZHOU ONECLOUD INFORMATION TECHNOLOGY Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by GUANGZHOU ONECLOUD INFORMATION TECHNOLOGY Inc filed Critical GUANGZHOU ONECLOUD INFORMATION TECHNOLOGY Inc
Priority to CN201210390034.7A priority Critical patent/CN102891854B/zh
Publication of CN102891854A publication Critical patent/CN102891854A/zh
Application granted granted Critical
Publication of CN102891854B publication Critical patent/CN102891854B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了一种云端服务器安全控制方法,包括如下步骤:拦截云端服务器的所有系统调用;检查拦截的系统调用是否在文件访问路径和socket访问权限的白名单内,如果是,允许该系统调用访问云端服务器上的相应资源,否则不允许。采用本方法,用户无需学习新的接口函数,使用非常方便,在传统WEB服务器上开发的应用程序不用进行修改或进行很少的修改就可以迁移到云端服务器上进行部署,减少了用户的工作量,而且同时实现了对上层所有语言的安全控制,大大减少了云服务提供商的开发维护量。

Description

一种云端服务器安全控制方法
技术领域
本发明涉及云端服务器安全领域技术,尤其涉及一种云端服务器安全控制方法。
背景技术
云计算是继1980年大型计算机到客户端-服务器的大转变之后的又一巨变,云计算描述了一种基于互联网的新的IT服务增加、使用和交付模式,其通常涉及通过互联网来提供动态易扩展的虚拟化资源。云计算是网格计算、分布式计算、并行计算、效用计算、虚拟化等传统计算机技术和网络技术发展融合的产物,它旨在通过网络把多个成本相对较低的计算实体整合成一个具有强大计算能力的完美系统,并借助SaaS、PaaS、IaaS、MSP等先进的商业模式把这强大的计算能力分布到终端用户手中,云计算的一个核心理念就是通过不断提高“云”的处理能力,进而减少用户终端的处理负担,最终使用户终端简化成一个单纯的输入输出设备,并能按需享受“云”的强大计算处理能力。
云端的用户开发是云计算中的一个新兴分支,用户无需安装任何开发工具,只要能登录互联网并拥有浏览器就可以进行云端服务器程序的开发,目前,国内、外已经有企业及开发人员使用这种基于云端的开发方式,并且这种开发方式已经成为一种趋势,用户将越来越多。
然而,由于云端的服务器直接暴露给用户,让用户将自己开发的应用程序在上面运行,并且一台云端的服务器上面很可能有多个用户同时使用,因此必须保证云端服务器的安全:使服务器上的用户不能通过其上传的云端应用程序肆意的删除或修改服务器系统的配置,也不能破坏登录到同一台服务器上的其他用户的文件。目前,为了保护服务器的安全,许多云服务提供商都采用在WEB编程语言中屏蔽函数接口的方式,并提供能够保护其服务器安全的特殊接口,此方式每种语言甚至每种语言的不同版本都要去实现一套自定义接口,因而需要极大的开发维护工作量,而且用户也需要去学习如何使用新的接口函数,给用户使用带来不便,并且要对在传统WEB服务器上已经开发出的应用程序进行较大的修改才能迁移到这种云端服务器上进行部署,同样增大了用户的工作量。
鉴于此,业内都在寻求一种云端服务器安全控制方法,既能减少云服务提供商的开发维护量,又能方便用户使用,有利于应用程序的迁移部署,减少用户的工作量。
发明内容
针对现有技术的不足,本发明的目的旨在于提供一种云端服务器安全控制方法,既能减少云服务提供商的开发维护量,又能方便用户使用,有利于应用程序的迁移部署,减少用户的工作量。
为实现上述目的本发明采用如下技术方案:
一种云端服务器安全控制方法,包括如下步骤:
c、拦截云端服务器的所有系统调用;
d、检查拦截的系统调用是否在文件访问路径和socket访问权限的白名单内,如果是,允许该系统调用访问云端服务器上的相应资源,否则不允许。
在步骤c之前还包括步骤:
a、设置云端服务器的文件访问路径和socket访问权限的白名单。
在步骤a之后及步骤c之前还包括步骤:
b、在沙盒中启动云端服务器。
在步骤b中,沙盒将自己的共享库注入云端服务器,该共享库包含与云端服务器系统库函数接口同名的库函数接口;在步骤c中,当系统调用访问与共享库的库函数接口同名的云端服务器系统库函数接口时,共享库对其进行拦截;在步骤中,共享库对拦截到的系统调用进行白名单检查,通过检查的则允许其调用系统库函数,没有通过检查的则拒绝其调用系统库函数。
本发明所阐述的一种云端服务器安全控制方法,其有益效果在于:采用本方法,用户无需学习新的接口函数,使用非常方便,在传统WEB服务器上开发的应用程序不用进行修改或进行很少的修改就可以迁移到云端服务器上进行部署,减少了用户的工作量,而且同时实现了对上层所有语言的安全控制,大大减少了云服务提供商的开发维护量。
附图说明
图1是发明实施例的流程示意图。
具体实施方式
下面结合附图与具体实施例来对本发明作进一步描述。
请参照图1所示,其显示出了本发明一种云端服务器安全控制方法的主要流程,在步骤a中,设置云端服务器的文件访问路径和socket访问权限的白名单。
进行到步骤b,在沙盒中启动云端服务器。启动后,沙盒将自己的共享库注入云端服务器,该共享库包含与云端服务器系统库函数接口同名的库函数接口。以UNIX环境为例更具体地说明:用沙盒的加载程序来启动云端服务器,此时要导入的参数包括共享库的路径信息、白名单配置文件的路径信息以及云端服务器启动的命令信息,在沙盒的加载程序中,共享库的信息被导入到环境变量LD_PRELOAD中,LD_PRELOAD为UNIX下的一个特殊的环境变量,它可以影响程序运行时的链接,它允许在程序运行前优先加载此环境变量中指定的动态链接库,对C语言函数库中函数的拦截是靠指定此环境变量来完成。白名单配置文件的路径信息被导入到自定义的环境变量中,将本进程中的环境变量保存,然后用execve来执行传入进来的云端服务器启动命令,并将保存的环境变量通过env参数传给这个新启动的进程,执行完之后云端服务器进程被启动。
进行到步骤c,拦截云端服务器的所有系统调用。在云端服务器进程中,当系统调用访问与共享库的库函数接口同名的云端服务器系统库函数接口时,共享库对其进行拦截,比如open、read、write、socket、connect等接口。在一些接口如open,socket中,拦截后还会再一次检查白名单配置文件是否已经导入,若没有导入则进行导入,若已经导入则进行后续的白名单权限判断。
进行到步骤d,检查拦截的系统调用是否在文件访问路径和socket访问权限的白名单内,如果是,允许该系统调用访问云端服务器上的相应资源,否则不允许。在该步骤中,由共享库对拦截到的系统调用进行白名单检查,通过检查的则允许其调用系统库函数,没有通过检查的则拒绝其调用系统库函数。具体而言,白名单权限分为两类链表进行保存,一类是文件权限相关的链表,另一类是socket权限相关的链表,这些链表会在相应的操作接口调用的时候被扫描,判断某一访问权限是否被允许,若允许,则用dlsym来获取此调用的LIBC接口的函数指针,然后用其来调用,若不允许则返回-1告知调用者此调用不被允许,由于PHP、RUBY等WEB服务器开发语言就是WEB服务器产生的一个进程,所以此拦截也就达到了控制其访问权限的目的。
采用本方法,云端服务器上运行的PHP、RUBY等脚本程序的所有系统调用都可以被拦截并进行白名单权限判断,避免了云端服务器上的资源被随意的访问和更改,保护了WEB服务器的安全,用户无需学习新的接口函数,使用非常方便,在传统WEB服务器上开发的应用程序不用进行修改或进行很少的修改就可以迁移到云端服务器上进行部署,减少了用户的工作量,而且同时实现了对上层所有语言的安全控制,大大减少了云服务提供商的开发维护量。
以上所述,仅是本发明较佳实施例而已,并非对本发明的技术范围作任何限制,故凡是依据本发明的技术实质对以上实施例所作的任何细微修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

Claims (1)

1.一种云端服务器安全控制方法,其特征在于,包括如下步骤:
c、拦截云端服务器的所有系统调用;
d、检查拦截的系统调用是否在文件访问路径和socket访问权限的白名单内,如果是,允许该系统调用访问云端服务器上的相应资源,否则不允许;
在步骤c之前还包括步骤:
a、设置云端服务器的文件访问路径和socket访问权限的白名单;
在步骤a之后及步骤c之前还包括步骤:
b、在沙盒中启动云端服务器;
在步骤b中,沙盒将自己的共享库注入云端服务器,该共享库包含与云端服务器系统库函数接口同名的库函数接口;在步骤c中,当系统调用访问与共享库的库函数接口同名的云端服务器系统库函数接口时,共享库对其进行拦截;在步骤d中,共享库对拦截到的系统调用进行白名单检查,通过检查的则允许其调用系统库函数,没有通过检查的则拒绝其调用系统库函数。
CN201210390034.7A 2012-10-15 2012-10-15 一种云端服务器安全控制方法 Active CN102891854B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210390034.7A CN102891854B (zh) 2012-10-15 2012-10-15 一种云端服务器安全控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210390034.7A CN102891854B (zh) 2012-10-15 2012-10-15 一种云端服务器安全控制方法

Publications (2)

Publication Number Publication Date
CN102891854A CN102891854A (zh) 2013-01-23
CN102891854B true CN102891854B (zh) 2015-08-26

Family

ID=47535221

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210390034.7A Active CN102891854B (zh) 2012-10-15 2012-10-15 一种云端服务器安全控制方法

Country Status (1)

Country Link
CN (1) CN102891854B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105653938A (zh) * 2015-12-31 2016-06-08 中国电子科技网络信息安全有限公司 一种用于虚拟机的沙箱保护系统及方法
CN110502901A (zh) * 2019-07-31 2019-11-26 湖南微算互联信息技术有限公司 云手机厂商的配置信息保护方法、系统及存储介质
CN110460601B (zh) * 2019-08-14 2020-12-22 北京三快在线科技有限公司 依赖包安全性检测方法、装置及存储介质
CN110781491B (zh) * 2019-10-25 2022-02-18 苏州浪潮智能科技有限公司 一种进程访问文件的控制方法及装置
CN113641424B (zh) * 2021-10-13 2022-02-01 北京安华金和科技有限公司 一种数据库操作的处理方法和系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101924761A (zh) * 2010-08-18 2010-12-22 奇智软件(北京)有限公司 一种依据白名单进行恶意程序检测的方法
CN102523270A (zh) * 2011-12-09 2012-06-27 成都东方盛行电子有限责任公司 一种实现云存储的方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101924761A (zh) * 2010-08-18 2010-12-22 奇智软件(北京)有限公司 一种依据白名单进行恶意程序检测的方法
CN102523270A (zh) * 2011-12-09 2012-06-27 成都东方盛行电子有限责任公司 一种实现云存储的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"一种用于访问控制的WINDOWS系统调用拦截实现";李晓哲等;《北京电子科技学院学报》;20081230;第16卷(第4期);参见第79页第3节 *
"代码访问安全的原理与策略研究";李家兰;《电脑知识与技术》;20100831;第6卷(第24期);参见第6689页2.1、2.2节 *

Also Published As

Publication number Publication date
CN102891854A (zh) 2013-01-23

Similar Documents

Publication Publication Date Title
CN102891854B (zh) 一种云端服务器安全控制方法
Atlidakis et al. POSIX abstractions in modern operating systems: The old, the new, and the missing
RU2658190C2 (ru) Управление доступом во время выполнения к интерфейсам прикладного программирования
CN105046116B (zh) Android系统中保护dex文件不被反编译的方法
CN103379481B (zh) 一种实现安全防护的方法
CN107423619B (zh) 一种基于虚拟化技术构建智能终端web运行时的方法
Pereira et al. BigActors: a model for structure-aware computation
EP2881860B1 (en) Method for implementing an interrupt between virtual processors, related device, and system
CN104216741A (zh) 基于APK动态加载的Android插件化实现方法、装置及交互方法
CN105184166A (zh) 基于内核的安卓程序实时行为分析方法及系统
CN103678354A (zh) 基于云计算平台的本地关系型数据库节点调度方法和装置
KR102235556B1 (ko) 안드로이드 어플리케이션에 의해 실행 가능한 보안 컨테이너 구축 장치, 방법 및 그 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체
CN104767741B (zh) 一种基于轻型虚拟机的计算服务分离与安全保护系统
CN108365994B (zh) 一种针对云计算安全统一管理的云安全管理平台
US20220083364A1 (en) Reconciler sandboxes for secure kubernetes operators
US20210165803A1 (en) Replicating materialized views across heterogeneous target systems
CN104503752A (zh) 一种智能设备中控制网页调用系统功能的方法及装置
CN104573422A (zh) 一种基于虚拟机的应用进程运行方法及装置
CN108205615A (zh) 一种优化可信基础组件的实现系统及其实现方法
Xiong et al. Cloud operating system for industrial application
Bezirgiannis et al. ABS: A high-level modeling language for cloud-aware programming
CN103902890A (zh) 一种Android程序行为的监控方法及监控系统
CN109388435A (zh) 实现app同时多次开启操作的方法和装置
CN203225789U (zh) 基于云计算的虚拟桌面终端系统
Zhang et al. Elastic HTML5: Workload offloading using cloud-based web workers and storages for mobile devices

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address

Address after: 510260, Guangdong, Haizhuqu District, Xingang West Road, No. 135 in the science and technology building, B, block 705-714, room

Patentee after: GUANGZHOU ONECLOUD INFORMATION TECHNOLOGY CO.,LTD.

Address before: 510000, Xingang West Road, Guangzhou, Guangdong, Zhongshan University, B 705, National University Science Park, Haizhuqu District

Patentee before: ONECLOUD, Inc.

CP03 Change of name, title or address
TR01 Transfer of patent right

Effective date of registration: 20230602

Address after: Room 715, Building B, Zhongda Science and Technology Park, Building 705, West District, Yuanyuan, No. 135 Xingang West Road, Haizhu District, Guangzhou City, Guangdong Province, 510000 (for office only)

Patentee after: Guangzhou Yunbiao Bureau Network Technology Co.,Ltd.

Address before: Room 705-714, block B, Zhongda science and technology complex building, 135 Xingang West Road, Haizhu District, Guangzhou, Guangdong 510260

Patentee before: GUANGZHOU ONECLOUD INFORMATION TECHNOLOGY CO.,LTD.

TR01 Transfer of patent right