PHP-Python等5款主流编程语言爆安全漏洞-JavaScript (胚和胚盘一样吗)

教程大全 2025-07-12 03:42:10 浏览

PHP、JS 等主流编程语言爆安全漏洞

没有不漏的锅,如果底层的编程语言如果出现问题,顶层的应用程序还能幸免于难吗?

这周在 Black Hat Europe 2017 安全会议上,一名安全研究员公开了几款目前非常流行的解释型编程语言中出现的漏洞。这些编程语言上存在的问题,可能让运用这些语言开发的应用程序因此也很容易遭受攻击。

PHP

这项研究的作者是 IOActive 的高级安全顾问 Fernando Arnaboldi。这位专家表示他使用了自动化的模糊测试工具在解释器中对五种编程语言进行了测试:Java,Perl,PHP,Python和Ruby。在对默认库和内置函数进行模糊测试之后,他在研究中公布了每种语言存在的一些问题。

图0:JavaScript、PHP、Python等主流编程语言爆安全漏洞

使用 XDiFF 对 5 款语言进行模糊测试

使用模糊测试工具,对软件进行测试通常需要检测到不寻常的行为,以及对内存崩溃以及溢出进行检测。

目前比较流行的测试工具(如AFL和Peach)通常需要在寻找漏洞的时候的时候采用相同的逻辑,而这些工具无法存储执行过的测试用例的信息。

在这位研究员的研究过程中,他自定义了自己的模糊测试工具 XDiFF(扩展差分模糊测试框架),以此适应这几款不同的编程语言。在测试过程中,他将每种编程语言都分解成了最基本的功能,然后使用XDiFF来提供各种payload输入来进行测试。

图1:JavaScript、PHP、Python等主流编程语言爆安全漏洞

在这次测试中,我们的的输入中主要使用了不到 30 种的原始数据类型,但也有一些特别的payload。这些特别的payload 是用于测试程序获取外部数据资源时是否会出现问题。

以上这些测试都是用于分析测试目标——是否会出现“暴露本地文件、未授权的代码注入、未授权的系统代码执行操作”等安全问题。

测试结果:均暴露出问题

而从他的测试结果来看,我们确实可以看到Java、PHP、Ruby、Perl、Python分别在经历了多项测试之后,暴露出来了哪些问题。

最安全的应用层序也会因此“倒下”

Arnaboldi 表示攻击者可以利用这些编程语言上的漏洞来“放倒”最安全的应用程序。

一些软件开发者可能会在没有意识到的情况下将代码包含在应用程序中,而这些代码可能导致的后果却是开发者没有考虑到的。

即便是按照安全指南来进行开发的最安全的应用程序也可能会因此出现“安全隐患”。

即便开发者没有恶意企图,但这些漏洞也可能因为开发者无意识或试图简化开发而引入进来。

图2:JavaScript、PHP、Python等主流编程语言爆安全漏洞

目前XDiFF已经作为开源项目公布在GitHub上。

更具体的演讲和演示内容也可以在Arnaboldi的论文中了解。

参考资料:


ROR ruby javascript pHP ASP在网页制作领域中都用来干嘛的,各有什么优点,现在真不知道学哪个

1、ROR是“Ruby on Rails”的缩写,是这两年流行起来的网站框架; 2、Ruby是一种纯正的面向对象,解释型的编程语言; 3、Javascript是网页脚本,交互性强,做网站通常要用到; 4、PHP是开源的网站编程语言; 5、ASP是微软的网站编程语言。 我本人认为你可以先学ROR,然后在做网站的练习过程中再补Ruby和Javascipt。 有C++经验的话可以学PHP,比较容易上手。 ASP就不要考虑了,已经过时了,漏洞也不少,而且现在都用了。

请分析一下asp.net/jsp/python/php/ruby哪个更有前途?

Python最有前途,我很喜欢用。 Python并不是一种新兴的语言,1991年就已经出现。 你列举的这五种言语的共性是都用于Web开发,Web现在最牛的是Google,Python就是由Google支持的语言,Python的创始人现在就在Google工作,Google新推出的Google App Engine现在只支持一种语言,那就是Python,Google App Engine上可以直接运行Django的网站,Django是Python现在最流行的网站开发框架。 Google主要是的三种语言是C++, Java, Python. 即使从非网站开发来说,Python擅长于Scripting,则可以帮助你做一些工作中的小事情特别是数据处理什么的。 从平台来说,上有IronPython,Java上有Jython。 我在一家世界顶级投行工作,Python和Perl是我们现在能在产品中使用的唯一两种动态语言,而Python的可读性是它最大的长处,当然要大大好于Perl.

c c++ c# JAVA PHP Python 这些都是编程用的语言?还有哪些?区别在哪?

以上都是编程语言0基础?是专业需要,还是业余研究?其实最普遍使用的编程语言是C++C与C++是完全兼容的,也就是在C的基础上引入类的相关概念等C#是微软的另一款编程语言,语法结构上与C相似,但与C是两种编程语言。 PHP主要是网络开发Python是一种解释型(程序运行时同步编译)的面向对象的编程语言。 JAVA是一种跨平台的编程语言,运行使用JAVA编写的程序需要JAVA运行环境,比较适合开发Android系统的软件。 初学者的话是一个很好的选择,语法与Basic语言相似,但同时也是一种强大的面向对象的编程语言,呃~~但是就业的话可能还是~~~~。

本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

发表评论

热门推荐