1.帮我解密一个加密的php程序
2.手撕CTFHub-Web(七):RCE
3.base64_decode(" 解å¯
帮我解密一个加密的php程序
垃圾代码啊,送给我我都不要。
这样的代码,可以把服务器搞垮的。
别人一般加密都是通过zend加密成为c的那种二进制的文件。
而这个是外汇crm源码技术字符串加密而已。
垃圾代码千万,别用。而且现在PHP程序制作都是很方便的。找个程序员重新做一个这样的程序不就得了 。
手撕CTFHub-Web(七):RCE
在深入探讨 RCE(远程代码执行)的实现过程中,我们首先聚焦于 PHP 中的 eval 函数。eval 函数允许执行 PHP 字符串,通常通过接收 POST 或 GET 方法提交的数据,如 cmd 参数。这允许执行如 `system('ls')` 这样的命令,以查看当前目录。然而,没有对输入进行过滤,源码分析监控线程这直接导致了攻击者可以连接到菜刀(web shell)服务器。
当在根目录发现 flag 文件时,我们注意到一个名为 shell.txt 的一句话木马文件。通过接收 file 参数并利用 strpos 函数,我们可以绕过对 flag 文件的直接包含限制。构造请求 `?file=./shell.txt` 来包含 shell.txt,并使用菜刀连接,我们得以在根目录下获取 flag。
接着,策略模型源码在哪我们转向 PHP://input 的概念,它允许将 POST 请求中的数据作为 PHP 代码执行。构造 `?file=php://input` 的请求并提交 POST 数据,我们可以执行命令并从根目录中找到 flag 文件。
远程包含提供了一种通过外部服务器的包含命令执行代码的方法。通过在 file 参数中填写自己的服务器上的包含一句话木马的 txt 文件地址,我们可以绕过服务器端的限制,直接在根目录下找到 flag。
在尝试直接读取源代码时,传奇源码制作教程发现与 PHP://input 类似的问题。根据题目描述和提示,我们猜测使用 PHP://filter 协议可以读取 flag 文件。构造请求 `/?file=php://filter/read=convert.base-encode/resource=/flag`,读取 flag 文件的 base 内容,然后对得到的内容进行 base 解码以获取 flag。
进入命令注入的探讨,exec 函数用于执行 cmd 参数指定的命令,并将执行后的权益小程序源码返回状态写入 res。尽管尝试使用管道符|连接命令,但没有返回任何内容,可能是因为存在无法显示的字符。使用 base 编码并导出命令后,解码得到 flag。
面对 cat 命令的过滤,我们使用连接符''、\ 或 $@ 来绕过过滤,构造命令 `.0.0.1|ca''t ./ flag_.php|base`,获取 base 编码后的内容并解码得到 flag。
过滤空格的处理中,我们使用连接符`<`构造命令 `.0.0.1|cat<./flag_.php|base`,获取 base 编码后的内容,解码后得到 flag。
目录分隔符的过滤处理需要特别注意,使用分号`;`来分割命令。由于 `/` 被过滤,我们先用 `cd` 进入 flag_is_here 文件夹,然后用 `cat` 读取 flag 文件 flag_.php。构造命令 `.0.0.1;cd flag_is_here;cat flag_.php` 获取 flag。
运算符的过滤包括 |、& 和 ||,通过使用分号`;`来分隔命令,我们绕过了这些过滤。构造命令 `.0.0.1;cat flag_.php` 并查看源代码页面以获取 flag。
综合过滤练习要求我们整合多种技术,以应对复杂的过滤策略。借助一篇文章中提供的 Linux 绕过方法,我们了解到使用 `%0a` 作为分隔符可以执行命令。请注意 `%0a` 是 URL 编码,必须在 URL 中使用,否则将被二次编码。构造请求 `?ip=.0.0.1%0als` 可以执行成功并发现目录 flag_is_here。接下来,用 `%` 代替空格并使用连接符`'’`绕过对关键词 cat 和 flag 的过滤,构造命令 `?ip=.0.0.1%0acd%fl''ag_is_here%0aca''t%fl''ag_.php` 并查看源码获取 flag。
base_decode(" 解å¯
æ èåï¼èæ¯çè§ææ èç人ç¨PHPæ¥å å¯ã
å ¶å®PHPæ¯æ æ³å å¯çï¼åªè¦æevalæ¿æ¢ä¸ºexitï¼è¿è¡ä¸æ¬¡å°±è½çè§æºä»£ç ï¼ä¸è¿ç°å¨æ èç人é½å¾åæï¼æ¯å¦è¿ä¸ªä»£ç 就被åå¤âå å¯âäºæ¬¡ï½
â解å¯âåç代ç å¦ä¸ï¼
<?php
/* please do not edit anything here */
include("footer_content.php");
echo '<div id="footcopy" style="background-image:url('.get_bloginfo('template_directory').'/images/footer_copy.gif);height:px;display:block;color:#;text-align:center;padding-top:px;">
<div class="onethousand_wrap">
<a href="">Zionn</a> designed by <a title="ZENVERSE Premium Themes" href="">ZENVERSE</a> | In conjunction with <a href="">Reseller Hosting</a> from the #1 <a href="">Web Hosting Provider</a> - HostNexus.
</div>
</div>';
$zenverse_global_google_analytics = get_option('zenverse_global_google_analytics');
if ($zenverse_global_google_analytics != '')
wp_footer();
echo '</body></html>';
>