Foros del Web » Programando para Internet » PHP »

ofuscar php

Estas en el tema de ofuscar php en el foro de PHP en Foros del Web. un amigo me encargo que le hiciera una aplicacion en php para su trabajo de titulo (esta estudiando pedagogia en quimica, asi que no es ...
  #1 (permalink)  
Antiguo 20/10/2010, 15:30
 
Fecha de Ingreso: agosto-2006
Mensajes: 141
Antigüedad: 17 años, 8 meses
Puntos: 0
ofuscar php

un amigo me encargo que le hiciera una aplicacion en php para su trabajo de titulo (esta estudiando pedagogia en quimica, asi que no es obligatorio que el desarrolle el programa), para proteger el programa de copias descaradas o robos, decidimos ofuscarlo o encriptarlo (la que logremos), los ofuscadores en linea que he encontrado usan base64 (ya se que es facil descifrarlo, pero peor es nada), en un servidor bajo linux la aplicacion corre sin ningun problema, sin embargo al montarla en windows (se requiere portabilidad por lo que estamos usando un xampp portable) tiene los siguientes problemas
1.- todas las php usados quedan con <?<?<?<?<?<?<?<?<? al pie, asi que imaginen como queda una pagina que requiera unos 4 php's
2.-cuando se requiere usar variables de sesion (o sea en toda la aplicacion) se obtiene un error similar a este
Warning: Cannot modify header information - headers already sent by : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code:16) in C:\xampp\htdocs\ruta_aplicacion\archivo.php(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d code(3) : eval()'d
en el manual de php, en la seccion de la funcion eval, indican que para evitar ese error se deben usar las funciones ob_start() y ob_end_clean () (en otra pagina indican que esta ultima debe ser ob_end_flush() de lo contrario no hay salida) sin embargo ya que la primera pagina en usar las variables de sesion es la del logueo, al pasar a la siguiente pagina y hacer la validacion de sesion se devuelve al index.php y arroja error de acceso ilegal (por lo que puedo decir que las funciones ob_* evitan la escritura en variables de sesion)
nota: las funciones ob_ no las probe bajo linux ya que los php's ofuscados trabajan sin problemas

segui buscando otro metodo y encontre estos 2 scripts
phpcodebuster
phpobfuscator

sin embargo ambos utilizan la constante T_ML_COMMENT y si la reemplazo por T_COMMENT o T_DOC_comment (que si son aceptadas), no obtengo resultados

alguna solucion al error del base64 o alguna otra alternativa de ofuscacion/encriptacion (y que no sea el zend o alguna de pago)
  #2 (permalink)  
Antiguo 20/10/2010, 16:05
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ofuscar php

la respuesta es bien fácil:

- si pagas no tendrías problemas
- si no pagas, entonces atente a las consecuencias

osea, no se recomienda para nada ofuscar con trucos el código PHP, en todo caso, y la manera mas profesional sería usar algún "compilador" a byte-code como los que mencionabas..

ahora que si no deseas usar estas herramientas, pues atente a tus errores de humano... si no tienes experiencia en control de errores ofuscando, y bien, no tienes la suficiente experiencia para escribir software de calidad y seguro previo a ofuscarlo... ¿que podemos hacer por ti?

además que te quejas tanto, si el software no es para ti, y lo peor es que es para otro individuo pues... mal, en que escuela tan "chafa" dejarían que alguien mas haga el trabajo de titulo de otro!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 20/10/2010, 17:51
 
Fecha de Ingreso: agosto-2006
Mensajes: 141
Antigüedad: 17 años, 8 meses
Puntos: 0
Respuesta: ofuscar php

Cita:
Iniciado por pateketrueke Ver Mensaje
la respuesta es bien fácil:

- si pagas no tendrías problemas
- si no pagas, entonces atente a las consecuencias

osea, no se recomienda para nada ofuscar con trucos el código PHP, en todo caso, y la manera mas profesional sería usar algún "compilador" a byte-code como los que mencionabas..

ahora que si no deseas usar estas herramientas, pues atente a tus errores de humano... si no tienes experiencia en control de errores ofuscando, y bien, no tienes la suficiente experiencia para escribir software de calidad y seguro previo a ofuscarlo... ¿que podemos hacer por ti?

además que te quejas tanto, si el software no es para ti, y lo peor es que es para otro individuo pues... mal, en que escuela tan "chafa" dejarían que alguien mas haga el trabajo de titulo de otro!!
2 cosas:
1.-tu sarcasmo esta muy fuera de lugar (viste cuanto cobran por la licencia de un año de zend guard(no hay licencias de menor duracion)? 600 dolares, necesitaria 3 años para poder pagarlo),que que me preocupa? pues es codigo en el que he invertido varios dias, no pienso regalarselo a cualquiera cuando podria reocuparlo en algun momento futuro
2.-malentendiste todo el asunto, yo no le estoy haciendo el trabajo de titulo, estoy programando una aplicacion que ocupara para su trabajo de titulo, cuando has visto un profe de quimica que deba saber programacion?
  #4 (permalink)  
Antiguo 20/10/2010, 18:02
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ofuscar php

1.- bien, no pagues... pero tampoco ofusques, lo mas profesional es que uses una licencia de software...
2.- o bien, si alguien mas se apropia de tu código no es tu culpa, quizá tu amigo te juega mal y hasta lo vende!!

lo pienso porque si tu amigo solo va a usar tu código para presentar el titulo, entonces que finalizando te lo entregue y/o borre su copia... ¿no crees?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 20/10/2010, 18:07
 
Fecha de Ingreso: agosto-2006
Mensajes: 141
Antigüedad: 17 años, 8 meses
Puntos: 0
Respuesta: ofuscar php

Cita:
Iniciado por pateketrueke Ver Mensaje
1.- bien, no pagues... pero tampoco ofusques, lo mas profesional es que uses una licencia de software...
2.- o bien, si alguien mas se apropia de tu código no es tu culpa, quizá tu amigo te juega mal y hasta lo vende!!

lo pienso porque si tu amigo solo va a usar tu código para presentar el titulo, entonces que finalizando te lo entregue y/o borre su copia... ¿no crees?
no se como sean las reglas para la presentacion de trabajos de titulo en tu pais, pero por lo menos aca se debe entregar lo siguiente:
1.- trabajo de titulo impreso y empastado
2.-un cd/dvd con:
a.-trabajo de titulo version doc
b.-trabajo de titulo version pdf
c.-jpg de los diagramas y dibujos utilizados
d.-todos los programas utilizados (o sea si o si tiene que ir la aplicacion que estoy desarrollando)

por lo tanto la universidad se queda con una copia digital de todos los trabajos de titulo
  #6 (permalink)  
Antiguo 20/10/2010, 20:40
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ofuscar php

Cita:
Iniciado por GreenlanternX Ver Mensaje
por lo tanto la universidad se queda con una copia digital de todos los trabajos de titulo
¿y cuando se volvió esto algo que ver con un titulo?

jeje... no amigo, dejate de bromas a lo único que me refiero es que si piensas distribuir un código fuente, lo mejor sería incluir una licencia...

las demás alternativas además de costosas, pueden llegar a ser molestas... no solo costo capital, pues ofuscar un código mal escrito que sigue generando errores... bueno, creo que entiendes...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 20/10/2010, 21:01
 
Fecha de Ingreso: agosto-2006
Mensajes: 141
Antigüedad: 17 años, 8 meses
Puntos: 0
Respuesta: ofuscar php

el codigo no tiene problemas, si lo cargo en su estado puro en el xampp trabaja perfectamente, los errores surgen al aplicarle el base64
por ejemplo este codigo pertenece a logueo.php

<?php
session_start();
require("db.php");
$link=conectaBD();
$result=mysql_query("select * from usuarios where nom_usuario='".$_POST[usr]."';");

$msg="\"El Usuario ingresado no existe, o la contrase\"";
$msg.="+String.fromCharCode(241)+\"";
$msg.="a es erronea.\"";
$_SESSION['msgLogin']=$msg;
$url='index.php';

if (mysql_num_rows($result)==0){
header("Location: ".$url);
}else{
$arr = mysql_fetch_array ($result);
if ($arr["pass_usr"]!=$_POST[pwd]) {
header("Location: ".$url);
}else{
$_SESSION['msgLogin']='';
$_SESSION['control'] = 1;
$_SESSION['nombre']=$_POST[usr];
$_SESSION['tipo']= $arr["nivel"];
session_write_close();
if ($arr['nivel']=='A'){
header("location: administracion.php");}
if ($arr['nivel']=='J'){
header("location: jugador.php");}
}
}
?>

en el momento que lo ofusco


<?php
eval(gzinflate(base64_decode('HVVHz4RWEjyvf8V3sy0k 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 OA8MmRiUwbv76+++///eXv//65T9//v1/')));
?>

y el codigo ofuscado en base 64 que ves aqui funciona sin problemas en el servidor linux, y al pasarlo al xampp en windows arroja los errores mencionados arriba

Última edición por GreenlanternX; 20/10/2010 a las 21:07
  #8 (permalink)  
Antiguo 20/10/2010, 21:07
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ofuscar php

Cita:
Iniciado por GreenlanternX Ver Mensaje
el codigo no tiene problemas, si lo cargo en su estado puro en el xampp trabaja perfectamente, los errores surgen al aplicarle el base64
justo a eso me refería, he ahí uno de los costos de ofuscar código a la mala... (:
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 20/10/2010, 21:12
 
Fecha de Ingreso: agosto-2006
Mensajes: 141
Antigüedad: 17 años, 8 meses
Puntos: 0
Respuesta: ofuscar php

Cita:
Iniciado por pateketrueke Ver Mensaje
justo a eso me refería, he ahí uno de los costos de ofuscar código a la mala... (:
podrias aclarar a que te refieres con "a la mala" ya que si hay una mala manera entonces por logica debe haber una "buena"
pd: hechale un vistazo al codigo arriba
  #10 (permalink)  
Antiguo 20/10/2010, 21:25
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ofuscar php

la mala es creer que escribimos código correcto, desde primer instancia, con el reporte de errores desactivado... y dejame decir que tu código, que aunque funciona en tu sistema, si tiene bastantes errores...

otro detalle es conocer a la perfección los requerimientos sintácticos de la función eval(), ya que aunque nuestro código original sea sintacticamente correcto al ser procesado mediante eval() genera incongruencias por la misma manera de procesarse, no solo basta con hacerlo, hay que saber hacerlo -y bien-
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #11 (permalink)  
Antiguo 20/10/2010, 21:34
 
Fecha de Ingreso: agosto-2006
Mensajes: 141
Antigüedad: 17 años, 8 meses
Puntos: 0
Respuesta: ofuscar php

el codigo ofuscado lo obtuve usando la herramienta de este sitio
http://jcarlosrendon.morelosplaza.co.../ofuscador.php
y la de este provocaba el mismo resultado (al ejecutarla, no me di el trabajo de verificar caracter por caracter)
http://www.hackingballz.com/herramie...r-codigos.html
  #12 (permalink)  
Antiguo 20/10/2010, 21:41
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ofuscar php

Cita:
y el codigo ofuscado en base 64 que ves aqui funciona sin problemas en el servidor linux, y al pasarlo al xampp en windows arroja los errores mencionados arriba
a ver, concentremonos en este mensaje... ¿podrías dar mas detalles?

te sugiero que previamente compares la configuración del mismo php.ini y que iguales ambas en tus distintos servidores...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #13 (permalink)  
Antiguo 20/10/2010, 22:15
 
Fecha de Ingreso: agosto-2006
Mensajes: 141
Antigüedad: 17 años, 8 meses
Puntos: 0
Respuesta: ofuscar php

Cita:
Iniciado por pateketrueke Ver Mensaje
a ver, concentremonos en este mensaje... ¿podrías dar mas detalles?

te sugiero que previamente compares la configuración del mismo php.ini y que iguales ambas en tus distintos servidores...
indicare solo las diferencias , de lo contrario necesitaria muchas lineas:
short_open_tag (tux:on-win:off)
output_buffering (tux:4096-win:off)
allow_call_time_pass_reference(tuxoff:-win:on)
max_execution_time (tux:30-win:60)
memory_limit(tux:64M-win:128M)
error_reporting(tux:E_ALL & ~E_DEPRECATED-win:E_ALL & ~E_NOTICE & ~E_DEPRECATED)
display_startup_errors(tux:off-win:on)
variables_order(tux:EGPCS-win:GPCS)
register_long_arrays(tux:comentado-win:off)
register_argc_argv(tux:off-win:on)
post_max_size(tux:8M-win:128M)
cgi.force_redirect(tux:comentado-win:0)
upload_max_filesize(tux:8M-win:128M)

//con respecto a las extensiones mandriva no las maneja en el php.ini, pero me asegure que en ambos servidores estuviese la zlib (que se indico como obligatoria para usar el codigo ofuscado)
pd: ambos estan con la ultima version de php y mysql (si hubiese algun problema ahi ni sikiera el codigo sin ofuscar funcionaria)
  #14 (permalink)  
Antiguo 20/10/2010, 22:32
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ofuscar php

bien, supongo que ya has igualado las configuraciones...

¿pero entonces el código funciona igual en ambos servidores antes de ofuscar?

y eso quiere decir que, ¿tan solo en Windows no te funciona el mismo código ofuscado?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #15 (permalink)  
Antiguo 20/10/2010, 22:37
 
Fecha de Ingreso: agosto-2006
Mensajes: 141
Antigüedad: 17 años, 8 meses
Puntos: 0
Respuesta: ofuscar php

es lo que he dicho desde el principio, el codigo funciona bien en ambos, pero al ofuscarlo solo falla en windows
  #16 (permalink)  
Antiguo 20/10/2010, 22:43
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ofuscar php

Cita:
Iniciado por GreenlanternX Ver Mensaje
es lo que he dicho desde el principio, el codigo funciona bien en ambos, pero al ofuscarlo solo falla en windows
me parece que el problema viene entonces de los sitios donde ofuscaste dicho código, ¿ya intentaste ofuscar el código por ti mismo?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #17 (permalink)  
Antiguo 20/10/2010, 22:47
 
Fecha de Ingreso: agosto-2006
Mensajes: 141
Antigüedad: 17 años, 8 meses
Puntos: 0
Respuesta: ofuscar php

no, no lo he intentado, no he encontrado "como" hacerlo (solo he encontrado"se hace con base64_encode"...)
  #18 (permalink)  
Antiguo 20/10/2010, 23:00
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ofuscar php

bien, pues aquí te doy un poco de teoría:
Código PHP:
<?php
echo 'Hola mundo';
?>
según el manual de eval()
Cita:
Existen algunos factores que hay que tener en cuenta cuando se usa eval(). Recuerde que la cadena pasada debe ser código PHP válido, incluyendo aspectos como la finalización de las sentencias con un punto y coma, ya que así el analizador no terminará en la línea que va después de eval(), y escapar de manera apropiada cosas en code_str. Para mezclar salida HTML y código PHP se puede usar una etiqueta de cierre de PHP para dejar el modo PHP.
[...]
La cadena de código a ser evaluada. code_str no tiene que contener etiquetas de apertura de PHP.
Una sentencia return finalizará inmediantamente la evaluación de la cadena.
osea, que para que funcione bien debería ser algo así:
Código PHP:
<?php
// MAL
$code_str "<?php echo 'Hola mundo'; ?>";

// BIEN
$code_str "echo 'Hola mundo';";
?>
y en resumen eso es todo, después solo debes aplicar base64_encode() para codificar el código:
Código PHP:
$code_str_base64 base64_encode($code_str); 
finalmente tu script debe ejecutar tan solo el código que ya esta ofuscado:
Código PHP:
eval(base64_decode($code_str_base64)); 
espero que se entienda algo, deberías hacer la prueba por ti mismo y así nos sacas de dudas...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #19 (permalink)  
Antiguo 21/10/2010, 01:55
Avatar de blekia  
Fecha de Ingreso: julio-2009
Mensajes: 204
Antigüedad: 14 años, 9 meses
Puntos: 6
Respuesta: ofuscar php

Cita:
Iniciado por GreenlanternX Ver Mensaje
...alguna solucion al error del base64 o alguna otra alternativa de ofuscacion/encriptacion (y que no sea el zend o alguna de pago)
Puedes comprar IonCube, lo que no se es si te funcionará en Windows.

Si quieres te puedo pasar un php compilado para ver si te funciona antes de comprarlo. Mandame un pm porque no estoy suscrito al tema

Salu2
__________________
Controla tu Página Web con cualquier navegador.
  #20 (permalink)  
Antiguo 21/10/2010, 08:17
 
Fecha de Ingreso: agosto-2006
Mensajes: 141
Antigüedad: 17 años, 8 meses
Puntos: 0
Respuesta: ofuscar php

Cita:
Iniciado por pateketrueke Ver Mensaje
Código PHP:
<?php
// MAL
$code_str "<?php echo 'Hola mundo'; ?>";

// BIEN
$code_str "echo 'Hola mundo';";
?>
entonces el codigo que deberia cargar en el ofuscador tendria que ser desde la linea session_start();
hasta la ultima llave de cierre (}) para que funciones y los unicos tags de php solo para marcar el cambio de php a html....
puede que todo el problema parta de ahi debido a que windows es demasiado quejica
voy a probar

Cita:
Iniciado por blekia Ver Mensaje
Puedes comprar IonCube, lo que no se es si te funcionará en Windows.

Si quieres te puedo pasar un php compilado para ver si te funciona antes de comprarlo. Mandame un pm porque no estoy suscrito al tema

Salu2
aunque se agradece la ayuda, la licencia del ioncube sale casi 200 dolares (o sea un año para juntar el money) si la situacion mejora seria una buena alternativa
  #21 (permalink)  
Antiguo 21/10/2010, 08:47
Avatar de romel_inc  
Fecha de Ingreso: diciembre-2007
Ubicación: Venezuela-monagas
Mensajes: 288
Antigüedad: 16 años, 5 meses
Puntos: 14
Respuesta: ofuscar php

Desde que me entere que existen los framework, tengo la sensación que cualquier aplicación, software, etc. se pueden copiar fácilmente...
__________________
Lo que se usar (JAVA, Spring MVC, IntelliJ IDEA , GAE, CakePHP, Bootstrap, Underscorejs, jQuery, HTML5, CSS3, JSON, Ajax, Prototype), Aprendiendo a usar Angularjs y Git.
  #22 (permalink)  
Antiguo 21/10/2010, 10:25
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: ofuscar php

Cita:
Iniciado por romel_inc Ver Mensaje
Desde que me entere que existen los framework, tengo la sensación que cualquier aplicación, software, etc. se pueden copiar fácilmente...
pues si, casi todos los framework -o librerías de trabajo- son OpenSource y esa es la filosofía...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #23 (permalink)  
Antiguo 21/10/2010, 12:16
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 6 meses
Puntos: 890
Respuesta: ofuscar php

Cita:
Iniciado por pateketrueke Ver Mensaje
pues si, casi todos los framework -o librerías de trabajo- son OpenSource y esa es la filosofía...


__________________
Drupal Argentina
  #24 (permalink)  
Antiguo 21/10/2010, 20:07
 
Fecha de Ingreso: agosto-2006
Mensajes: 141
Antigüedad: 17 años, 8 meses
Puntos: 0
Respuesta: ofuscar php

Cita:
Iniciado por pateketrueke Ver Mensaje
espero que se entienda algo, deberías hacer la prueba por ti mismo y así nos sacas de dudas...
ahora si funciona y de paso descubri que window$ opera diferente con algunos tipos de campos de los formulario (por ejemplo tenia un campo tipo image llamado Grabar, en linux podia accederlo como $_POST["Grabar"], pero en windows con el mismo codigo debia accederlo como $_POST["Grabar_x"] y $_POST["Grabar_y"]), ahora habra que ver si sigue funcionando una vez le aplique compresion.

pd: por alguna razon no pude ocupar la funcion addslashes en el codigo antes de aplicar base 64, asi que tuve que agregar los \ a mano a cada \ " y $ del codigo plop

Etiquetas: ofuscar
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 11:09.