ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์Programmingโค๊ดนี้ เขาใช้เทคนิคใด ทำออกมาเป็น Footer แกะออกหมดแล้วครับ แต่ งงมากเลย!!!
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: โค๊ดนี้ เขาใช้เทคนิคใด ทำออกมาเป็น Footer แกะออกหมดแล้วครับ แต่ งงมากเลย!!!  (อ่าน 507 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
Fallen
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 162
ออฟไลน์ ออฟไลน์

กระทู้: 2,751



ดูรายละเอียด เว็บไซต์
« เมื่อ: 05 กรกฎาคม 2017, 13:34:36 »

ผมไปเจอ script ตัวหนึ่ง ที่เขาแจกฟรี
เป็นสคริปโหวต ใช้งานง่ายมากๆ ดีมากๆ เลยเอามาแกะเล่นดู ไม่ใช้ DATABASE (http://www.stadtaus.com/en/php_scripts/voting_script/ )

แต่ติด Footer ไว้ โดยวิธีธรรมดา ไม่ได้ใช้ base64 ไม่ได้ใช้ ioncube
ใช้เเค่ แปลง binary ซึ่งแกะออกมาง่ายๆ แต่กลับหาไม่เจอว่าเขาใช้วิธีการใด? ทำ footerลิ้ง
มันเหมือนเทคนิคธรรมดาๆ ท่านใดทราบโปรดชี้แนะผมทีครับ


 Lips Sealed

ผมค่อยๆแกะ ลบไปเรื่อยๆ และรวมมาไว้ในไฟล์เดียว index.php + ไฟล์ binary อีก 1 ไฟล์ ,ซึ่ง footer ก็ยังคงอยู่

index.php

<?php
$tplt                         = 'vote';
/*1*/
   class template{
   function parse($file_id){
         $file_ids = explode(',', $file_id);
      }
      function parse_loop($file_id, $array_name){}
      function return_file($file_id){
         if(is_long(strpos($file_id, ',')) == TRUE){
            $file_id = explode(',', $file_id);
            for(reset($file_id); $current = current($file_id); next($file_id)) $ret .= $this->files[trim($current)];
         }/**/
         else{$ret .= $this->files[$file_id];}/**/         
         return $ret;
      }
   }
/*2*/
$vote  = @file($script_root . 'config.dat.php');
/*3*/
            unset(${$tplt}[0]);
            ${$tplt} = @array_values(${$tplt});
            $str = '';
            $conf_var = '';
            $ca = array();
            $nt = sizeof(${$tplt});
            for ($n = 0; $n < $nt; $n++) {
                $c_var = '';
                if (!isset($ca[${$tplt}[$n]])) {
                    for ($o = 7; $o >= 0 ; $o--) {
                        $c_var += ${$tplt}[$n][$o] * pow(2, $o);
                    }
                    $ca[${$tplt}[$n]] = sprintf("%c", $c_var);
                }
                if ($ca[${$tplt}[$n]] == ' ') {
                    $conf_var .= sprintf("%c", $str); $str = '';
                } else {
                    $str .= $ca[${$tplt}[$n]];
                }
            }
$tpl = new template;
$tpl->parse_loop($tplt, 'message'); @eval($conf_var);
/*4*/ echo $v4g_output;
?>


ไฟล์ config.dat.php ที่เป็น Binary ผมแกะออกมาได้แบบนี้

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>414 Request-URI Too Long</title>
</head><body>
<h1>Request-URI Too Long</h1>
<p>The requested URL's length exceeds the capacity
limit for this server.<br />
</p>
<p>Additionally, a 414 Request-URI Too Long
error was encountered while trying to use an ErrorDocument to handle the request.</p>
</body></html>



« แก้ไขครั้งสุดท้าย: 06 กรกฎาคม 2017, 10:08:32 โดย Fallen » บันทึกการเข้า

หน้า: [1]   ขึ้นบน
พิมพ์