Linux生产服务器LNMP全自动安装脚本已关闭评论
2℃
1.隐藏php版本号
隐藏方法:vim php.ini添加如下代码
expose_php = Off
2.隐藏nginx版本号
隐藏方法:vim nginx.conf 在http里加入
sever_tokens= Off
3.隐藏apache版本号
隐藏方法:vim httpd.ini 添加如下代码
ServerTokens = ProductOnly
ServerSignature = Off
修改每个配置文件都要重启服务才可以生效。
伪装apache
编辑ap_release.h文件,修改“#define AP_SERVER_BASEPRODUCT \"Apache\"”为“#define AP_SERVER_BASEPRODUCT \"Microsoft-IIS/5.0\"”。
编辑os/unix/os.h文件,修改“#defi...
apache, nginx, php阅读全文
1℃
PHP,nginx配置和潜在执行任意代码,我以前的博客文章发布后,我遇到了一个单独的空字节注入漏洞nginx的旧版本(0.5.*,0.6.*,0.7,0.8<=0.7.65<=0.8.37)。通过利用此漏洞,攻击者可以导致服务器使用PHP的FastCGI作为PHP的服务器上执行任何公开访问的文件。
在nginx的含漏洞的版本中,空字节URI中默认允许的(他们的存在是通过命名zero_in_uri在ngx_http_request.h定义一个变量)。单个模块有能力选择退出处理空字节的URI。然而,并非所有这些,特别不FastCGI模块。
这次攻击事件本身很简单:恶意用户发出...
nginx, php, 注入漏洞, 空字节阅读全文
curl未正确安装引起FreeBSD7.0上编译安装php时的错误 [原创]已关闭评论
今天在FreeBSD 7.0上编译安装php-5.2.17时出现了一个问题,怎么./configure都不过,一直报如下错误:
configure: error: There is something wrong. Please check config.log for more information.
最终找到了原因所在,是因为curl没有正确安装。
测试curl命令:
curl -s -I http:/www.baidu.com
/libexec/ld-elf.so.1: /lib/libc.so.7: version FBSD_1.1 required by /usr/local/lib/libcurl.so.6 not found
查看curl安装:
pkg_info
autoconf-2.68 Automatically configure source code on...
curl, freebsd, php阅读全文
1℃
利用php开发android应用程序
我们将分为两部分来讲解利用php来开发android应用程序:
第一部分是指在Android系统的手机上直接写PHP脚本代码并立即运行;
第二部分则继续讲解如何把写好的PHP脚本代码打包成akp安装文件。
PHP可不仅仅只能在互联网站上发展,一个PHP for Android (PFA)站点表示他们将可以发布编程模型、工具盒文档让PHP在Android上实现应用。该项目的主要赞助商是开源公司IronTec,PFA使用 Scripting Layer for Android (SL4A),也就是Androd Scripting Environment (ASE)来实现这一点。
首先,在手...
Android, ASE, PFA, php, SL4A阅读全文
1℃
php的mail函数发送UTF-8编码中文邮件时标题乱码的解决办法
最近遇到一个问题,就是在使用php的mail函数发送utf-8编码的中文邮件时标题出现乱码现象,而邮件正文却是正确的。最初以为是页面编码的问题,发现页面编码utf-8没有问题啊,找了半天原因,最后找到了问题所在
1.使用 PEAR 的 Mail 类
PEAR 的 Mail 类可以让你选择使用 sendmail 或者 SMTP 方式发信,这样的包装好的接口很好用,你没有必要去自己重新发明轮子。
2.关于 headers 中 subject 的乱码
不要把任何除了 iso-8859-1 编码之外的文字直接放进 subj...
mail, php, 编码阅读全文
6℃
测试环境FreeBSD7.4+php5.2.17+mysql5.1.56+nginx1.0.1(亲测可用)
apache因为有php_admin_value open_basedir 可以限制webshell跨目录,可是nginx目前没有这样的模块支持。
之前网上也有人通过每个站点使用单独的conf,使php-cgi开启不同的端口来区分开,达到防webshell跨目录的目的,但本人所用生产环境经测还是不行,所以就从修改php的源代码来着手
随即从网上找了下,确实有很多种修改源码的方法,但是经过测试都没有成功,无奈还得从源代码研究,经过多种测试最终解决了,编译php时修改代码(main/fopen_wrapp...
freebsd, nginx, open_basedir, php, webshell阅读全文
18℃
之前使用了一个网上随便找的简易计数器代码,必须启用exec函数,有些童鞋的空间商为了安全起见禁用了此函数导致代码出错,特写了段简单的读写文件的和读写数据库的代码供参考。
代码如下:
<?php
$counterFile = "counter.txt";
if (!file_exists($counterFile))
{
file_put_contents($counterFile, 0);
}
$num = intval(file_get_contents($counterFile));
$num ++;
echo"您是第 "."$num"." 位访客";
file_put_contents($counterFile, $num);
?>
下面一个是修改为...
counter, exec, php阅读全文
nginx跑php时找不到文件报no input file specified.已关闭评论