欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

技术剖析中国菜刀原理

来源:本站转载 作者:Little Hann 时间:2013-08-29 TAG: 我要投稿
dirname() 函数返回路径中的目录部分。

 

$_SERVER["SCRIPT_FILENAME"]:

当前执行脚本的绝对路径。

如果在命令行界面(Command Line Interface, CLI)使用相对路径执行脚本,例如 file.php 或 ../file.php,那么 $_SERVER['SCRIPT_FILENAME'] 将包含用户指定的相对路径。

 

substr() 函数返回字符串的一部分。

substr(string,start,length)

 

string system(string command, int [return_var]);

本函数就像是 C 语中的函数 system(),用来执行指令,并输出结果。若是 return_var 参数存在,则执行 command 之后的状态会填入 return_var 中。同样值得注意的是若需要处理用户输入的资料,而又要防止用户耍花招破解系统,则可以使用 EscapeShellCmd()。若 PHP 以模块式的执行,本函数会在每一行输出后自动更新 Web 服务器的输出缓冲暂存区。若需要完整的返回字符串,且不想经过不必要的其它中间的输出界面,可以使用 PassThru()。

如果return_val存在的话,那么执行的结果信息将被写入return_val中,@system($r." 2>&1");;我们都知道在C语言中,2代表错误输出流的意思,PHP是用C写的,当然也继承了这个特性,那这个意思就是执行系统命令,并屏蔽错误显示。

 

$c=substr($d,0,1)=="/"?"-c '{$s}'":"/c {$s}";

这是一段正则表达式,用捕获分组获得字符串中的参数,这里也就是 cd /d "C:\wamp\www\、 dir、 echo、 cd、 echo。

注意上面system函数的声明:若 PHP 以模块式的执行,本函数会在每一行输出后自动更新 Web 服务器的输出缓冲暂存区。

这就是说,我们指定的这个命令会分别执行,然后输出结果

基本上就是这样了。

 

 

 

 

4. 数据库管理

这块因为我自己也没搞清楚,先留着吧,过段时间再来研究研究。

上一页  [1] [2] [3] [4] [5] [6] [7] 

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载