Foros del Web » Programando para Internet » PHP »

Enviar formulario con seguridad

Estas en el tema de Enviar formulario con seguridad en el foro de PHP en Foros del Web. Hola a todos espero que estén muy bien, tengo una duda, necesito enviar un formulario con información confidencial, este formulario tiene campos ocultos, pero cualquiera ...
  #1 (permalink)  
Antiguo 17/05/2011, 23:32
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Enviar formulario con seguridad

Hola a todos espero que estén muy bien, tengo una duda, necesito enviar un formulario con información confidencial, este formulario tiene campos ocultos, pero cualquiera con un poco de mala intención podría malversar la información y enviar el formulario, muy fácilmente.

Entonces como podría yo ocultar el formulario?

Se me ocurre una forma pero no sé si es correcta, por ejemplo guardar la información en variables de sesión , luego colocar un botón que me lleve a un archivo PHP con el formulario, el cual se rellena con las variables de sesión, pero este archivo no muestra nada todo los campos son ocultos y no hay botón ni nada, el formulario se enviaría mediante un onload en el body el cual llama a función javascript la cual envía el formulario......

Es correcto esto? se puede hacer?

Hay alguna forma de hacerlo con PHP


Desde ya muchas gracias a todos por su ayuda.
Saludos para todos.


.
__________________
la la la
  #2 (permalink)  
Antiguo 17/05/2011, 23:38
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Enviar formulario con seguridad

entonces las variables de sesion siempre serían las mismas? o de donde salen?

creo que seria más sencillo hacer un registro de usuarios, y que cuando el usuario acceda se tomen los datos de su... digamos perfil y se envien de manera automatica al correr un archivo.

pues dices que los campos no serán llenados por el user, entonces no tiene caso hacer un form.
  #3 (permalink)  
Antiguo 17/05/2011, 23:41
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Enviar formulario con seguridad

Cita:
Iniciado por memoadian Ver Mensaje
entonces las variables de sesion siempre serían las mismas? o de donde salen?

creo que seria más sencillo hacer un registro de usuarios, y que cuando el usuario acceda se tomen los datos de su... digamos perfil y se envien de manera automatica al correr un archivo.

pues dices que los campos no serán llenados por el user, entonces no tiene caso hacer un form.
Gracias por contestar pero no se trata de registro de usuarios sinó de un monto a pagar, se genera el valor total en $ y el codigo del producto etc...
Lo que no quiero es que nadie pueda modificar el valor total del campo hidden del formulario, ya que esto haría que el usuario pague un monto incorrecto, se entiende?
__________________
la la la
  #4 (permalink)  
Antiguo 17/05/2011, 23:54
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Enviar formulario con seguridad

ah ok entonces puedes usar la propiedad disabled de javascript para el form y asignarle un value predefinido. ejemplo:

Código HTML:
<input type="text" value="123.00" disabled="disabled"/> 
además creo que un campo hidden no se puede modificar por el usuario.
  #5 (permalink)  
Antiguo 17/05/2011, 23:57
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Enviar formulario con seguridad

Cita:
Iniciado por memoadian Ver Mensaje
ah ok entonces puedes usar la propiedad disabled de javascript para el form y asignarle un value predefinido. ejemplo:

Código HTML:
<input type="text" value="123.00" disabled="disabled"/> 
además creo que un campo hidden no se puede modificar por el usuario.
Amigo, si se puede y muy facilmente....... no voy a decir como se hace porque no corresponde, pero se puede...



.Alguien más me puede ayudar


Gracias

.


.
__________________
la la la
  #6 (permalink)  
Antiguo 18/05/2011, 00:04
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Enviar formulario con seguridad

a ver a ver, a lo mejor tienes razón y soy muy ignorante, pero que yo sepa si mandas el form por POST y no por GET el hidden no lo pueden cambiar a menos que pudieran controlar tu código fuente.

si como dices, un hidden enviado por POST se puede cambiar entonces soy un asno y necesito estudiar mucho.

y veo que no quieres mi ayuda, ¿alguien que lo venga a ayudar?
  #7 (permalink)  
Antiguo 18/05/2011, 00:08
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Enviar formulario con seguridad

Cita:
Iniciado por memoadian Ver Mensaje
a ver a ver, a lo mejor tienes razón y soy muy ignorante, pero que yo sepa si mandas el form por POST y no por GET el hidden no lo pueden cambiar a menos que pudieran controlar tu código fuente.

si como dices, un hidden enviado por POST se puede cambiar entonces soy un asno y necesito estudiar mucho.

y veo que no quieres mi ayuda, ¿alguien que lo venga a ayudar?
No es que no quiero tu ayuda amigo, por favor no te enojesssss.....

y te agradezco por contestar y tu buena voluntad, pero hay cosas que no no sabe y y quiere ayudar, pero al no saber no ayuda xD , yo estuve en tu lugar 1000 veces en esa pocisión.... te pido disculpas si te ofendí, no fue para nada mi intención .
El código fuente se puede manipular al extremo......

.
__________________
la la la
  #8 (permalink)  
Antiguo 18/05/2011, 00:13
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Enviar formulario con seguridad

no me ofendes y no estoy enojado no interpretes mis palabras como una molestia, en fin, no tiene importancia.
  #9 (permalink)  
Antiguo 18/05/2011, 00:39
 
Fecha de Ingreso: mayo-2011
Ubicación: Barcelona
Mensajes: 19
Antigüedad: 12 años, 11 meses
Puntos: 1
Respuesta: Enviar formulario con seguridad

Hola truman, si modificar estos datos al pagar es muy facil si sabes un minimo de programacion web.

Lo que puedes hacer es validar una vez se ha pagado.

Me explico:

Cuando se realiza un pago mediante la pasarela de pago que estes usando, te devuelve un dato importante y es la cantidad pagada. Pues bien, si controlas que la cantidad que ha pagado es menor que lo que tenia que pagar es que ha hackeado y anulas la operacion.

(no hay forma de que el modifique la cantidad que te devuelve la pasarela de pago)
  #10 (permalink)  
Antiguo 18/05/2011, 00:52
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Enviar formulario con seguridad

Cita:
Iniciado por yiti007 Ver Mensaje
Hola truman, si modificar estos datos al pagar es muy facil si sabes un minimo de programacion web.

Lo que puedes hacer es validar una vez se ha pagado.

Me explico:

Cuando se realiza un pago mediante la pasarela de pago que estes usando, te devuelve un dato importante y es la cantidad pagada. Pues bien, si controlas que la cantidad que ha pagado es menor que lo que tenia que pagar es que ha hackeado y anulas la operacion.

(no hay forma de que el modifique la cantidad que te devuelve la pasarela de pago)
Si, eso ya lo había pensado, pero quería saber si la forma que propuse era correcta ya que en otras ocasiones tuve la misma duda, pero nunca como ahora que estoy haciendo una web para un cliente.
__________________
la la la
  #11 (permalink)  
Antiguo 18/05/2011, 01:02
 
Fecha de Ingreso: mayo-2011
Ubicación: Barcelona
Mensajes: 19
Antigüedad: 12 años, 11 meses
Puntos: 1
Respuesta: Enviar formulario con seguridad

No hay otra forma de hacer esto, ya que la información le tiene que llegar al cliente, asi que desde php no podemos hacer nada, y todo lo que sea html se puede modificar...

Lo más seguro es comprobar que paga lo que tiene que pagar y es lo que hacemos en mi empresa.
  #12 (permalink)  
Antiguo 18/05/2011, 01:03
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Enviar formulario con seguridad

Ok gracias
__________________
la la la
  #13 (permalink)  
Antiguo 18/05/2011, 01:05
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Enviar formulario con seguridad

modificar el codigo fuente de una web no es posible, no es posible modificar un hidden, se podria hacer con cURL o algun socket para enviar datos falsos al archivo, pero se evita como cualquier ataque xss o inyeccion sql, y la verdad truman en la forma que lo planteaste el principio no solo es erroneo, si no casi ridiculo.

y si piensas que cualquier hidden o código fuente es super facilmente modificable, hackear webs dinámicas sería el pan de cada día.

Cita:
yo estuve en tu lugar 1000 veces en esa pocisión....
parece que aun lo estás...
  #14 (permalink)  
Antiguo 18/05/2011, 01:10
 
Fecha de Ingreso: mayo-2011
Ubicación: Barcelona
Mensajes: 19
Antigüedad: 12 años, 11 meses
Puntos: 1
Respuesta: Enviar formulario con seguridad

Cita:
Iniciado por memoadian Ver Mensaje
modificar el codigo fuente de una web no es posible, no es posible modificar un hidden, se podria hacer con cURL o algun socket para enviar datos falsos al archivo, pero se evita como cualquier ataque xss o inyeccion sql, y la verdad truman en la forma que lo planteaste el principio no solo es erroneo, si no casi ridiculo.

y si piensas que cualquier hidden o código fuente es super facilmente modificable, hackear webs dinámicas sería el pan de cada día.



parece que aun lo estás...
Hola, revisate la siguiente herramienta para firefox y me comentas si no puedes modificar hasta la última linea de HTML o crear y utilizar funciones javascript.

http://getfirebug.com/
  #15 (permalink)  
Antiguo 18/05/2011, 01:19
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Enviar formulario con seguridad

por supuesto que conozco firebug, y es cierto que se puede modificar, con el protocolo javascript, pero como dije y lo dije mal lo admito. es que se puede evitar como cualquier ataque xss o de inyección. el problema no es que te modifiquen el formulario.

QUE LO HAGAN¡¡¡

la validación es lo que cuenta
  #16 (permalink)  
Antiguo 18/05/2011, 01:24
 
Fecha de Ingreso: mayo-2011
Ubicación: Barcelona
Mensajes: 19
Antigüedad: 12 años, 11 meses
Puntos: 1
Respuesta: Enviar formulario con seguridad

Cita:
Iniciado por memoadian Ver Mensaje
por supuesto que conozco firebug, y es cierto que se puede modificar, con el protocolo javascript, pero como dije y lo dije mal lo admito. es que se puede evitar como cualquier ataque xss o de inyección. el problema no es que te modifiquen el formulario.

QUE LO HAGAN¡¡¡

la validación es lo que cuenta
No lo puede evitar memoadian, ya que el formulario no se puede enviar a su servidor, un formulario de pago se TIENE que enviar directamente a la pasarela de pago, por lo que no puede tratar los datos y detectar hacking.



Lo que podrías hacer para enviar el formulario mas seguro es hacerlo mediante javascript ofuscando el input, pero ahi ya tendrás que investigar como hacerlo. (es posible, la opcion facil y segura es la que ya te he comentado)
  #17 (permalink)  
Antiguo 18/05/2011, 01:34
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Enviar formulario con seguridad

En este aspecto tienes toda la razón, y como has mencionado la solución estoy totalmente de acuerdo. pero yo me referia a en específico a los forms en general. y con el metodo que mencionó primero es lo mismo, aunque no todos los campos sean ocultos el form esta ahi.

quizas el problema es que no entendí desde un principio el asunto, y me desvie pensando en una especie de carrito de compras.
  #18 (permalink)  
Antiguo 18/05/2011, 01:46
 
Fecha de Ingreso: mayo-2011
Ubicación: Barcelona
Mensajes: 19
Antigüedad: 12 años, 11 meses
Puntos: 1
Respuesta: Enviar formulario con seguridad

Bueno lo importante es que ha salido una solución al problema ;)
  #19 (permalink)  
Antiguo 18/05/2011, 08:23
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Enviar formulario con seguridad

Cita:
Iniciado por truman_truman Ver Mensaje
[...] pero cualquiera con un poco de mala intención podría malversar la información y enviar el formulario, muy fácilmente. [...]
Es posible, siempre y cuando cuente con los conocimientos técnicos suficientes.

No cualquier persona es capaz de conseguirlo, pocos entienden los formularios, pero bueno... si colocas como name del hidden algo así como:
Código HTML:
<input name="clave_tarjeta_pin"/> 
Pues es obvio lo que significa, incluso es descuidado pasar datos tan importantes por formularios. De ahí que se deben usar las sesiones para persistir datos sensibles.

Una técnica que se les ha pasado a todos es muy simple: CRSF

La idea consiste en generar un hash único al momento de mostrar el formulario, pasamos dicho hash como hidden, y al procesar el formulario comprobamos si coincide dicho valor con el hash previamente almacenado en sesión.

Es el mismo concepto de los captcha, o algo así.

Y de verdad, no importa cuan sensible sea un formulario, usando esta técnica te aseguro que nadie podrá conseguir lo que temes.

NOTA: todo proceso con datos sensibles debe hacerse en el servidor, no hay ninguna razón para pasarlos por un formulario.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #20 (permalink)  
Antiguo 18/05/2011, 08:36
 
Fecha de Ingreso: mayo-2011
Ubicación: Barcelona
Mensajes: 19
Antigüedad: 12 años, 11 meses
Puntos: 1
Información Respuesta: Enviar formulario con seguridad

Cita:
Iniciado por pateketrueke Ver Mensaje
NOTA: todo proceso con datos sensibles debe hacerse en el servidor, no hay ninguna razón para pasarlos por un formulario.

Esta operación es para una pasarela de pago, la transmisión de datos sensibles tiene que hacerse por un formulario....
  #21 (permalink)  
Antiguo 18/05/2011, 08: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: Enviar formulario con seguridad

Cita:
Iniciado por yiti007 Ver Mensaje
Esta operación es para una pasarela de pago, la transmisión de datos sensibles tiene que hacerse por un formulario....
Entiendo, pero... ¿pasarela hacía donde?

Vamos, que si el envío debe realizarse hacía una pagina externa ellos seguramente tienen bien controlado este problema.

Pero si el envío es hacia el mismo servidor, hacia la misma aplicación, bueno, ¿tiene sentido aún?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #22 (permalink)  
Antiguo 18/05/2011, 08:46
 
Fecha de Ingreso: mayo-2011
Ubicación: Barcelona
Mensajes: 19
Antigüedad: 12 años, 11 meses
Puntos: 1
Respuesta: Enviar formulario con seguridad

No hay forma de controlar eso, ya que se tiene que enviar el campo mediante post y lo tiene que enviar el cliente. La única forma de controlar que no ha habido manipulación de datos es comprobar que han pagado lo que tenían que pagar
  #23 (permalink)  
Antiguo 18/05/2011, 08:48
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Enviar formulario con seguridad

Cita:
Iniciado por memoadian Ver Mensaje
modificar el codigo fuente de una web no es posible, no es posible modificar un hidden, se podria hacer con cURL o algun socket para enviar datos falsos al archivo, pero se evita como cualquier ataque xss o inyeccion sql, y la verdad truman en la forma que lo planteaste el principio no solo es erroneo, si no casi ridiculo.
Jejejejejeje , que equivocado estás amigo...


Gracias "Pate" tu solución me perece la mejor...

Saludos a todos
__________________
la la la
  #24 (permalink)  
Antiguo 18/05/2011, 08:59
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Enviar formulario con seguridad

Bueno muchachos el problema básicamente era que un mal intencionado podría cambiar el valor a pagar del campo hidden, y entonces pagaría menos del valor total, estoy trabajando con Paypal, ellos te dan un formulario con campos hidden, uno de ellos es el del total a pagar, (que lo he alterado muy fácilmente para probar) cuando el usuario paga, se redirecciona a mi web, pasando por GET datos como el código del producto etc... entonces yo , en ese momento automáticamente actualizaba el registro como PAGADO sin comprobar el monto que ha pagado el usuario, ahora voy a crear otra tabla Pagos en donde registraré los montos pagados, y compararé las valores de dichos montos, (el real y el que pagó) y si coinciden Perfecto, sino NO.
__________________
la la la
  #25 (permalink)  
Antiguo 18/05/2011, 09:00
 
Fecha de Ingreso: mayo-2011
Ubicación: Barcelona
Mensajes: 19
Antigüedad: 12 años, 11 meses
Puntos: 1
Respuesta: Enviar formulario con seguridad

Hombre a mi no me importaría que pagaran más de lo que deben, solo controla que no paguen menos ;)
  #26 (permalink)  
Antiguo 18/05/2011, 09:40
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Enviar formulario con seguridad

Cita:
Iniciado por yiti007 Ver Mensaje
Hombre a mi no me importaría que pagaran más de lo que deben, solo controla que no paguen menos ;)
Y quien dijo algo sobre pagar de más ?

Obviamente que se trata qde que no paguen de menos... no entiendo porque decis eso


.
__________________
la la la
  #27 (permalink)  
Antiguo 18/05/2011, 10:26
 
Fecha de Ingreso: mayo-2011
Ubicación: Barcelona
Mensajes: 19
Antigüedad: 12 años, 11 meses
Puntos: 1
Respuesta: Enviar formulario con seguridad

Lo decía como una broma, al estar diciendo "Quien es el tonto que hackea y se pone a pagar de mas"

Etiquetas: seguridad, formulario
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 21:55.