2024年9月phpinfo敏感信息(发现phpinfo信息泄露漏洞 要怎么处理)
⑴phpinfo敏感信息(发现phpinfo信息泄露漏洞要怎么处理
⑵发现phpinfo信息泄露漏洞要怎么处理
⑶通过修改服务器环境内php.ini文件,将“expose_php=On”修改成“expose_php=Off”然后重启php即可。()如果确实需要该测试信息,在测试时使用,测试完毕后将该文件删除掉。()若无需要可以将一些php的危险函数禁用,打开/etc/php.ini文件,查找到disable_functions,添加需禁用的以下函数名:phpinfo,eval,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,fsocket,fsockopen
⑷从phpinfo中能获取哪些敏感信息
⑸绝对路径(_SERVER)这个是最常用,也是最有效的一个办法,找到phpinfo()页面可以直接找到网站的绝对路径,对于写shell和信息搜集是必不可少的。二、支持的程序可以通过phpinfo()查看一些特殊的程序服务,比如redis、memcache、mysql、SMTP、curl等等如果服务器装了redis或者memcache可以通过ssrf来getshell了,在discuz中都出现过此类问题。如果确定装了redis或memcache的话,在没有思路的情况下,可以着重找一下ssrf三、泄漏真实ip(_SERVER或SERVER_ADDR有时候通过phpinfo()泄漏的ip可以查查旁站、c段什么的,直接无视cdn,百事不灵。四、GOPHER也算是ssrf一部分吧,或者说主要靠ssrf利用起来,如果支持gopher,ssrf便没有压力咯五、fastcgi查看是否开启fastcgi和fastcgi的版本,可能导致解析漏洞、远程命令执行、任意文件读取等问题六、泄漏缓存文件地址(_FILES向phpinfo(post一个shell可以在_FILES中看到上传的临时文件,如果有个lfi,便可以直接getshell了。七、一些敏感配置allow_url_include、allow_url_fopen、disable_functions、open_basedir、short_open_tag等等比如allow_url_include可用来远程文件包含、disable_functions用来查看禁用函数,绕过执行、查看是否开启open_basedir,用p牛的绕过open_basedir的方法有可能能读一些没权限的目录等等。此外还能获取一些环境信息,比如Environment中的path、log等
⑹【网络安全】一次授权的渗透测试
⑺前不久的一次授权测试中,感觉缺少任何一步都无法达到getshell的目的,单个漏洞看得话确实平平无奇,但是如果组合起来的话也许会有意想不到的化学效应。
⑻拿到这个站的时候一眼就看见了会员登录界面,一开始想着注册,但是觉得会员功能应该很少,没验证码啥的,万一后台管理员也是会员呢那岂不是要是爆破出来了可以去后台尝试一波。
⑼在一开始打开网站的时候,由于安装了谷歌插件sensinfor(tls上发现的),可以初步探测网站的敏感目录,比如备份文件,phpmyadmin,phpinfo等等,在一开始就探测出存在phpinfo,获取了网站的绝对路径
⑽常规用nmap探测下开放的端口,发现对外开放了端口,有绝对路径了,不抱希望的去爆破下吧,反正我是没爆破出几个的密码,用下超级弱口令检查工具,字典接着用鸭王的吧,谁知道是字典强大还是运气爆破,话说这个不算弱口令,只能说字典里有这个密码吧,只要字典存在的就是弱密码,没有错。
⑾基于负责任的态度也发现了一些其他的漏洞,不过相对来说危害性不大吧,但是如果在写测试报告的时候如果没得写也是可以写上的。
⑿这个后台一般都有记录用户登录IP的习惯,但是如果记录IP的时候选取的是x-forward-for构造的IP,这样攻击者是可以伪造登录IP的,如果没有对IP的合法性进行校验,构造一个XSSpayload触发存储型XSS这也不是没可能,在测试的时候就遇到过几次,后台记录会员登录IP的地方存在存储型XSS
⒀不过这里美中不足的是后台对IP的合法性进行了校验,如果是不合法的IP会被重置为...
⒁登录后发现管理员没办法对自己进行操作,这很尴尬,管理员都没办法更改自己的信息
⒂很简单的办法随便找个可以进行更改的链接,更改url实现修改管理员信息,按照经验这种限制管理员更改自己信息的情况我遇到的很多都是前端限制了。
⒃细看下来真的没啥技术含量,运气好爆破出来了,可以写log日志,但是也算是一环扣一环吧,如果不是一开始爆破出来了可能也没想着去爆破,如果没有绝对路径的话我也懒得去爆破,测试中运气也很重要呀,哈哈。
⒄【网络安全学习资料·攻略】
⒅如何禁止php服务程序中不安全的功能
⒆为了使php程序更安全,很多站长都选择了禁用一些比较敏感的函数,那影响php安全的函数到底有哪些呢,下面我们列出了一些:、phpinfo()功能描述:输出PHP环境信息以及相关的模块、WEB环境等信息。危险等级:中、passthru()功能描述:允许执行一个外部程序并回显输出,类似于exec()。危险等级:高、exec()功能描述:允许执行一个外部程序(如UNIXShell或CMD命令等。危险等级:高、system()功能描述:允许执行一个外部程序并回显输出,类似于passthru()。危险等级:高、chroot()功能描述:可改变当前PHP进程的工作根目录,仅当系统支持CLI模式PHP时才能工作,且该函数不适用于Windows系统。危险等级:高、scandir()功能描述:列出指定路径中的文件和目录。危险等级:中、chgrp()功能描述:改变文件或目录所属的用户组。危险等级:高、chown()功能描述:改变文件或目录的所有者。危险等级:高、shell_exec()功能描述:通过Shell执行命令,并将执行结果作为字符串返回。危险等级:高、proc_open()功能描述:执行一个命令并打开文件指针用于读取以及写入。危险等级:高、proc_get_status()功能描述:获取使用proc_open()所打开进程的信息。危险等级:高、error_log()功能描述:将错误信息发送到指定位置(文件。安全备注:在某些版本的PHP中,可使用error_log()绕过PHPsafemode,执行任意命令。危险等级:低、ini_alter()功能描述:是ini_set()函数的一个别名函数,功能与ini_set()相同。具体参见ini_set()。危险等级:高、ini_set()功能描述:可用于修改、设置PHP环境配置参数。危险等级:高、ini_restore()功能描述:可用于恢复PHP环境配置参数到其初始值。危险等级:高、dl()功能描述:在PHP进行运行过程当中(而非启动时加载一个PHP外部模块。危险等级:高、pfsockopen()功能描述:建立一个Inter或UNIX域的socket持久连接。危险等级:高、syslog()功能描述:可调用UNIX系统的系统层syslog()函数。危险等级:中、readlink()功能描述:返回符号连接指向的目标文件内容。危险等级:中、symlink()功能描述:在UNIX系统中建立一个符号链接。危险等级:高
⒇phpinfo怎么用
⒈显示PHP的当前信息,其中包括PHP扩展和编译版本,服务器信息和环境,PHP环境中,路径,主机和本地配置选项,HTTP头,PHP许可等等(详细信息可参考PHP手册。要得到这些信息,不仅可以从浏览器中查看,还可以使用命令行在服务器上查看。
⒉使用浏览器查看很简单,:只需要在网站目录创建一个PHP文件,使用上面提到的phpinfo()函数,如:
⒊:phpinfo();
⒋然互在浏览器中输入此文件路径即可查看。
⒌在Linux服务器上,还可以使用如下命令,不用浏览网页同样可以查看PHP信息,如:
⒍php-r’phpinfo();’
⒎此命令同样可以得到网页形式的结果。
⒏phpinfo使用说明:
⒐bool?phpinfo?()
⒑输出?PHP?当前状态的大量信息,包含了PHP编译选项、启用的扩展、PHP版本、服务器信息和环境变量(如果编译为一个模块的话、PHP环境变量、操作系统版本信息、path变量、配置选项的本地值和主值、HTTP头和PHP授权信息(License)。
⒒因为每个系统安装得有所不同,?phpinfo()?常用于在系统上检查配置设置和预定义变量。
⒓phpinfo()?同时是个很有价值的、包含所有EGPCS(Environment,GET,POST,Cookie,Server)数据的调试工具。
⒔参考资料来源:百度百科-phpinfo
⒕web服务器安全设置
⒖Web服务器攻击常利用Web服务器软件和配置中的漏洞,web服务器安全也是我们现在很多人关注的一点,那么你知道web服务器安全设置吗?下面是我整理的一些关于web服务器安全设置的相关资料,供你参考。
⒗web服务器安全设置一、IIS的相关设置
⒘删除默认建立的站点的虚拟目录,停止默认web站点,删除对应的文件目录c:ipub,配置所有站点的公共设置,设置好相关的连接数限制,带宽设置以及性能设置等其他设置。配置应用程序映射,删除所有不必要的应用程序扩展,只保留asp,php,cgi,pl,aspx应用程序扩展。对于php和cgi,推荐使用isapi方式解析,用exe解析对安全和性能有所影响。用户程序调试设置发送文本错误信息给客户。
⒙对于数据库,尽量采用mdb后缀,不需要更改为asp,可在IIS中设置一个mdb的扩展映射,将这个映射使用一个无关的dll文件如C:WINNTsystemisrvssinc.dll来防止数据库被下载。设置IIS的日志保存目录,调整日志记录信息。设置为发送文本错误信息。修改错误页面,将其转向到其他页,可防止一些扫描器的探测。另外为隐藏系统信息,防止tel到端口所泄露的系统版本信息可修改IIS的banner信息,可以使用winhex手工修改或者使用相关软件如banneredit修改。
⒚对于用户站点所在的目录,在此说明一下,用户的FTP根目录下对应三个文件佳,wwwroot,database,logfiles,分别存放站点文件,数据库备份和该站点的日志。如果一旦发生入侵事件可对该用户站点所在目录设置具体的权限,图片所在的目录只给予列目录的权限,程序所在目录如果不需要生成文件(如生成html的程序)不给予写入权限。因为是虚拟主机平常对脚本安全没办法做到细致入微的地步。
⒛用户从脚本提升权限:
web服务器安全设置二、ASP的安全设置
设置过权限和服务之后,防范asp木马还需要做以下工作,在cmd窗口运行以下命令:
regsvr/uC:WINNTSystemwshom.ocx
delC:WINNTSystemwshom.ocx
regsvr/uC:WINNTsystemshell.dll
delC:WINNTsystemshell.dll
即可将WScript.Shell,Shell.application,WScript.work组件卸载,可有效防止asp木马通过wscript或shell.application执行命令以及使用木马查看一些系统敏感信息。另法:可取消以上文件的users用户的权限,重新启动IIS即可生效。但不推荐该方法。
另外,对于FSO由于用户程序需要使用,服务器上可以不注销掉该组件,这里只提一下FSO的防范,但并不需要在自动开通空间的虚拟商服务器上使用,只适合于手工开通的站点。可以针对需要FSO和不需要FSO的站点设置两个组,对于需要FSO的用户组给予c:winntsystemscrrun.dll文件的执行权限,不需要的不给权限。重新启动服务器即可生效。
对于这样的设置结合上面的权限设置,你会发现海阳木马已经在这里失去了作用!
web服务器安全设置三、PHP的安全设置
默认安装的php需要有以下几个注意的问题:
C:winntphp.ini只给予users读权限即可。在php.ini里需要做如下设置:
Safe_mode=on
register_globals=Off
allow_url_fopen=Off
display_errors=Off
magic_quotes_gpc=On
open_basedir=web目录
disable_functions=passthru,exec,shell_exec,system,phpinfo,get_cfg_var,popen,chmod
默认设置.allow_d=true修改为false
web服务器安全设置四、MySQL安全设置
如果服务器上启用MySQL数据库,MySQL数据库需要注意的安全设置为:
删除mysql中的所有默认用户,只保留本地root帐户,为root用户加上一个复杂的密码。赋予普通用户updatedeletealertcreatedrop权限的时候,并限定到特定的数据库,尤其要避免普通客户拥有对mysql数据库操作的权限。检查mysql.user表,取消不必要用户的shutdown_priv,reload_priv,process_priv和File_priv权限,这些权限可能泄漏更多的服务器信息包括非mysql的其它信息出去。可以为mysql设置一个启动用户,该用户只对mysql目录有权限。设置安装目录的data数据库的权限(此目录存放了mysql数据库的数据信息)。对于mysql安装目录给users加上读取、列目录和执行权限。
Serv-u安全问题:
安装程序尽量采用最新版本,避免采用默认安装目录,设置好serv-u目录所在的权限,设置一个复杂的管理员密码。修改serv-u的banner信息,设置被动模式端口范围(—)在本地服务器中设置中做好相关安全设置:包括检查匿名密码,禁用反超时调度,拦截“FTPbounce”攻击和FXP,对于在秒内连接超过次的用户拦截分钟。域中的设置为:要求复杂密码,目录只使用小写字母,高级中设置取消允许使用MDTM命令更改文件的日期。
更改serv-u的启动用户:在系统中新建一个用户,设置一个复杂点的密码,不属于任何组。将servu的安装目录给予该用户完全控制权限。建立一个FTP根目录,需要给予这个用户该目录完全控制权限,因为所有的ftp用户上传,删除,更改文件都是继承了该用户的权限,否则无法操作文件。另外需要给该目录以上的上级目录给该用户的读取权限,否则会在连接的时候出现Notloggedin,homedirectorydoesnotexist。比如在测试的时候ftp根目录为d:soft,必须给d盘该用户的读取权限,为了安全取消d盘其他文件夹的继承权限。而一般的使用默认的system启动就没有这些问题,因为system一般都拥有这些权限的。
web服务器安全设置五、数据库服务器的安全设置
对于专用的MSSQL数据库服务器,按照上文所讲的设置TCP/IP筛选和IP策略,对外只开放和端口。对于MSSQL首先需要为sa设置一个强壮的密码,使用混合身份验证,加强数据库日志的记录,审核数据库登陆事件的”成功和失败”.删除一些不需要的和危险的OLE自动存储过程(会造成企业管理器中部分功能不能使用),这些过程包括如下:
Sp_OAcreateSp_OADestroySp_OAGetErrorInfoSp_OAGetProperty
Sp_OAMethodSp_OASetPropertySp_OAStop
去掉不需要的注册表访问过程,包括有:
Xp_regaddmultistringXp_regdeletekeyXp_regdeletevalue
Xp_regenumvaluesXp_regreadXp_regremovemultistring
Xp_regwrite
去掉其他系统存储过程,如果认为还有威胁,当然要小心drop这些过程,可以在测试机器上测试,保证正常的系统能完成工作,这些过程包括:
xp_cmdshellxp_dirtreexp_dropwebtasksp_addsrvrolemember
xp_makewebtaskxp_runwebtaskxp_subdirssp_addlogin
sp_addextendedproc
在实例属性中选择TCP/IP协议的属性。选择隐藏SQLServer实例可防止对端口的探测,可修改默认使用的端口。除去数据库的guest账户把未经认可的使用者据之在外。例外情况是master和tempdb数据库,因为对他们guest帐户是必需的。另外注意设置好各个数据库用户的权限,对于这些用户只给予所在数据库的一些权限。在程序中不要用sa用户去连接任何数据库。网络上有建议大家使用协议加密的,千万不要这么做,否则你只能重装MSSQL了。
PHP中phpinfo函数有什么用
查看服务器配置是否支持php要求的运行环境查看php各项功能配置的打开关闭情况调试php配置变动及插件运行情况
怎样解决phpinfo()函数信息泄漏
phpinfo()函数返回的信息中包含了服务器的配置信息,包括:PHP编译选项以及文件扩展名的相关信息;php的版本信息php的配置信息;数据库信息;等敏感信息。这些敏感信息会帮助攻击者展开进一步的攻击。这一般是由于目标站点安装了缺省脚本或者测试文件中调用了phpinfo()函数造成的。限制此类脚本的访问权限或者删除对phpinfo()函数的调用
如何在Ubuntu.上用Apache的mod
启用PHP支持然后安装apache的php扩展:sudoaptinstalllibapache-mod-php.安装完成之后需要重启apache:sudosystemctlrestartapache然后在apache的默认目录中新建一个PHP文件:sudonano/var/www/html/info.php文件内容如下:《?phpphpinfo();?》然后在浏览器中查看一下是否成功:info。成功之后别忘了删除info.php,它包含了很多服务器的敏感信息。sudorm-f/var/www/html/info.php启用SSL然后启用SSL:sudoaenmodsslsudoaensitedefault-ssl配置PHP启用PHP扩展安装所需的PHP扩展,也可以全部安装,全部安装可能会降低性能:sudoapt-yinstallphp.-mysqlphp.-curlphp.-gdphp.-intlphp-pearphp-imagickphp.-imapphp.-mcryptphp-memcachephp.-pspellphp.-recodephp.-sqlitephp.-tidyphp.-xmlrpcphp.-xslphp.-mbstringphp-gettext然后重启apache:sudosystemctlrestartapache安装APCuAPCu是一个缓存扩展,可以缓存并优化PHP中间代码,强烈建议安装。sudoapt-yinstallphp-apcu然后重启apache:sudosystemctlrestartapache