Foros del Web » Programando para Internet » PHP »

CrawlProtect, encripta Php?

Estas en el tema de CrawlProtect, encripta Php? en el foro de PHP en Foros del Web. Hola amigos, sigo investigando en la proteccion de codigo, me encanta Zend, pero es muy caro y no puedo pagarlo. Googleando me encontre con: CrawlProtect.com ...
  #1 (permalink)  
Antiguo 10/07/2010, 02:21
 
Fecha de Ingreso: noviembre-2007
Mensajes: 191
Antigüedad: 16 años, 5 meses
Puntos: 0
CrawlProtect, encripta Php?

Hola amigos, sigo investigando en la proteccion de codigo, me encanta Zend, pero es muy caro y no puedo pagarlo.

Googleando me encontre con: CrawlProtect.com
Pero no entiendo exactamente que hace.

Alguien lo conoce?
  #2 (permalink)  
Antiguo 10/07/2010, 06:44
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: CrawlProtect, encripta Php?

según entendí, es una especie de firewall que se instala en el servidor, por lo que veo no ofusca ni compila codigo, creo que no sirve para lo que pretendes.

alternativas a Zend guard: ioncube, bcompiler
  #3 (permalink)  
Antiguo 10/07/2010, 09:27
 
Fecha de Ingreso: enero-2010
Mensajes: 191
Antigüedad: 14 años, 3 meses
Puntos: 7
Respuesta: CrawlProtect, encripta Php?

Cita:
Iniciado por maycolalvarez Ver Mensaje
alternativas a Zend guard: ioncube, bcompiler
Todos decodificables por cierto, aunque al menos los pones a trabajar.
  #4 (permalink)  
Antiguo 10/07/2010, 12:52
 
Fecha de Ingreso: noviembre-2007
Mensajes: 191
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: CrawlProtect, encripta Php?

Ah, perfecto!
Yo pense que codificaban....

Entonces no hay forma segura de proteger el codigo fuente?
  #5 (permalink)  
Antiguo 10/07/2010, 14:47
 
Fecha de Ingreso: enero-2010
Mensajes: 191
Antigüedad: 14 años, 3 meses
Puntos: 7
Respuesta: CrawlProtect, encripta Php?

No, 100% seguro no, hay herramientas que decodifican bastante aceptable aunque hay q corregir a mano, de todas maneras peor es nada.

Justamente codifican por eso puede ser decodificados.
  #6 (permalink)  
Antiguo 10/07/2010, 16:21
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 5 meses
Puntos: 890
Respuesta: CrawlProtect, encripta Php?

Yo uso esta clase, no soy experto en seguridad, pero segun me dijeron es excelente el nivel de encriptación que da, de momento lo estoy usando(no me preocupa mucho la idea de tener que proteger el código eso si) pero funciona.

Código PHP:
Ver original
  1. <?php
  2. define("ENCODING_LEVEL", 9);
  3. /**
  4.  *
  5.   */
  6. Class PhpEncode {
  7.     private $fileName="";
  8.     private $obfuscatedFilePostfix="obfuscated";
  9.     private $obfuscateFileName="";
  10.     private $errors=array();
  11.  
  12.     /**
  13.      *
  14.      *
  15.      * @param string $obfuscatedFilePostfix
  16.      */
  17.     public function __construct($obfuscatedFilePostfix=""){
  18.         if (trim($obfuscatedFilePostfix)!="") {
  19.             $this->obfuscatedFilePostfix=$obfuscatedFilePostfix;
  20.         }
  21.     }
  22.  
  23.     /**
  24.      * encoding
  25.           * @param string $fileName
  26.      * @return
  27.      */
  28.     public function obfuscate($fileName) {
  29.         if (trim($fileName)=="") {
  30.             $this->errors[]="File Name cannot be blank in function: ".__FUNCTION__;
  31.             return false;
  32.         }
  33.         if (!is_readable($fileName)){
  34.             $this->errors[]="Failed to open file: $fileName in the function: ".__FUNCTION__;
  35.             return false;
  36.         }
  37.         $this->fileName=trim($fileName);
  38.  
  39.         $ext=end(explode(".",$this->fileName));
  40.         $pos=strrpos($this->fileName,".");
  41.         $fileName=substr($this->fileName,0,$pos);
  42.         $this->obfuscateFileName=$obfuscateFileName=$fileName.".".$this->obfuscatedFilePostfix.".".$ext;
  43.  
  44.         if(($fp=fopen($obfuscateFileName,"w+"))===false){
  45.             $this->errors[]="Failed to open file: $obfuscateFileName for writing in the function: ".__FUNCTION__;
  46.             return false;
  47.         }
  48.         else {
  49.             fwrite($fp,"<?php \r\n");
  50.             $line=file_get_contents($this->fileName);
  51.            
  52.             $line=str_replace("<?php","",$line);
  53.             $line=str_replace("<?","",$line);
  54.             $line=str_replace("?>","",$line);
  55.             $line=trim($line);
  56.             $line=$this->encodeString($line,ENCODING_LEVEL);
  57.             $line.="\r\n";
  58.             fwrite($fp,$line);
  59.             fwrite($fp,"?>");
  60.         }
  61.         fclose($fp);
  62.         return $obfuscateFileName;
  63.     }
  64.    
  65.     /**
  66.      * Function to encode the file content before writing it
  67.      *
  68.      * @param string $string
  69.      * @param [int $levels]
  70.      * @return string
  71.      */
  72.     private function encodeString($string, $levels=""){
  73.         if (trim($levels)=="") {
  74.             $levels=rand(1,9);
  75.         }
  76.         $levels=(int) $levels;
  77.         for ($i=0; $i<$levels;$i++){
  78.             $string=base64_encode($string);
  79.             $string='eval(base64_decode("'.$string.'"));';
  80.         }
  81.         return $string;
  82.     }
  83.    
  84.     /**
  85.      * Function to return all encountered errors
  86.      * @return array
  87.      */
  88.     public function getAllErrors(){
  89.         return $this->errors;
  90.     }
  91.  
  92.     /**
  93.      * Function to find if there were any errors
  94.      *
  95.      * @return boolean
  96.      */
  97.     public function hasErrors(){
  98.         if (count($this->errors)>0) {
  99.             return true;
  100.         }
  101.         else {
  102.             return false;
  103.         }
  104.     }
  105. }
  106. ?>

Obviamete el uso es muy simple

Código PHP:
Ver original
  1. <?php
  2. include_once("PhpObfuscator.inc.php");
  3.  
  4. $fileName="file.php";
  5.  
  6. $obfuscator=new PhpEncode();
  7. $obfuscatedFile=$obfuscator->obfuscate($fileName);
  8.  
  9. //debug mode
  10. if($obfuscator->hasErrors()){
  11.     $errors=$obfuscator->getAllErrors();
  12.     echo "<pre>";
  13.     print_r($errors);
  14. }
  15. else {
  16.     print("<p><u>$fileName</u> was successfully obfuscated as <a href='$obfuscatedFile'><strong>$obfuscatedFile</strong></a></p>");
  17. }
__________________
Drupal Argentina
  #7 (permalink)  
Antiguo 10/07/2010, 18:31
 
Fecha de Ingreso: enero-2010
Mensajes: 191
Antigüedad: 14 años, 3 meses
Puntos: 7
Respuesta: CrawlProtect, encripta Php?

No esa clase no encripta, solamente ofusca, lo que permite a cualquiera en segundos volverlo a el archivo original.

Ioncube o Zend Guard es la opción, sino también SAAS que es 99% seguro.

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:20.