php源码是什么-都用的是php写的源码

更新时间:2023-09-03 12:31:31


一、php源码是什么




php源码是什么?
PHP源码指的就是PHP源代码,源代码是用特定编程语言编写的人类可读文本,源代码的目标是为可以转换为机器语言的计算机设置准确的规则和规范。因此,源代码是程序和网站的基础。
PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PHP独特的语法混合了C、Java、Perl以及 PHP 自创的语法。利于学习,使用广泛,主要适用于Web开发领域。
PHP主要特点
(一)开源性和免费性
由于PHP的解释器的源代码是公开的,所以安全系数较高的网站可以自己更改PHP的解释程序。另外,PHP 运行环境的使用也是免费的。
(二)快捷性
PHP是一种非常容易学习和使用的一门语言,它的语法特点类似于C语言,但又没有C语言复杂的地址操作,而且又加入了面向对象的概念,再加上它具有简洁的语法规则,使得它操作编辑非常简单,实用性很强。
(三)数据库连接的广泛性
PHP可以与很多主流的数据库建立起连接,如MySQL、ODBC、Oracle等,PHP是利用编译的不同函数与这些数据库建立起连接的,PHPLIB就是常用的为一般事务提供的基库。
(四)面向过程和面向对象并用
在PHP语言的使用中,可以分别使用面向过程和面向对象, 而且可以将PHP面向过程和面向对象两者一起混用,这是其它很多编程语言是做不到的。
更多PHP相关知识,请访问PHP中文网!


二、都用的是php写的源码


第一PHP语言本身漏洞相当多,尤其是很多人不喜欢用最新版本,现在PHP8都发布了,现在竟然还有一大批人用PHP5.2,越早的版本漏洞越多。漏洞多自然就好做渗透。

第二PHPweb框架漏洞也非常多。国内最常用的PHP框架thinkphp经常爆出各种严重漏洞,比如5.x的远程可执行命令漏洞,导致大量使用此框架的网站中招。这个漏洞利用之容易,做个程序可以随便感染一大批网站。有的人利用这个漏洞拿到的肉鸡多到自己都数不过来。

反观Javaweb,大多数人都会用sprint全家桶。而SpringMVC和Springsecurity提供的安全认证,起安全性都是非常强的。

虽然Spring也出一些漏洞,但是我印象中还没有出过非常容易利用,非常简单就能拿到最高权限的傻瓜式漏洞。

第三网上劣质php源码最多。很多人是根本不具备独立编程能力的,这些所谓的“程序员”最喜欢干的事是去网上下载各种免费源码,然后改吧改吧就算自己做了网站了。

这种免费源码,以PHP居多。什么的dedeCMS,什么xxshop,xxmall,微盟,这里垃圾PHP源码简直是千疮百孔,漏洞百出。可以说是黑客们的最爱。用这类垃圾源码最的网站,随便一个中学生捣鼓捣鼓就能入侵,简直和裸奔没啥区别。

同时,会用这些垃圾代码做网站的程序员,一般水平都不会太高,按理说连编程入门都算不上。这些所谓程序自然根本无法做到防止黑客入侵。

第四很多人安全意识太差。不管你用什么语言做网站,大多都要在网站程序外在跑一个Nginx,apache,或者IIS。即使使用Java,Nginx做反向代理+静态处理,后面再加tomcat的构架也很多。

凡是,很多人要么是技术不到位,要么是偷懒,不去自己编译tomcat或者apache,而是用网上现成的的一键安装包或者傻瓜安装程序。这些程序可能会默认安装PHP支持。

也就是说,一些安全意识不强或者水平比较差的程序员编写的javaweb很有可能也会支持PHP。

很多人在入侵提权的时候,不管你是什么网站,都会先试一下PHP能不能执行,入侵几率比较高。

关于最后一个问题,如果你找到了Javaweb的漏洞,可以上传文件了,下一步要做的就是提权。这个时候你直接上传Java源代码是没有用的。php是动态执行的,源码可以直接被执行,而Java则需要编译。

拿到上传权限后想提权,就必须先弄清楚对方服务器的jre版本,然后再本地用相应的版本编译后,再把jar包传上去,才能够执行。

这里还有一个不同,一般php提权,只需要拿到网站根目录的上传权限即可。但是Javaweb很有可能网站的根目录,和存放可执行jar包的目录不是一个目录,想要执行Java代码,你就必须想法拿到jar包所在目录的上传权限(同时也要拿到网站根目录权限),这是一个难点。