Pregunta

Mi amigo y yo estamos trabajando en un programa. Este programa va a presentar datos llegar a nuestra página web. Sin embargo, no queremos que los usuarios el acceso a la página web de otro modo que el programa. Podemos evitar que los usuarios compartan el programa mediante la autenticación HWID, pero nada impide el uso de un escáner de paquetes para obtener la URL de la página web. Pensamos acerca de la autenticación de usuario-agente, que vamos a poner en práctica, pero los agentes de usuario pueden ser fácilmente falsificada.

Así que mi pregunta es, ¿cómo podemos evitar que los usuarios accedan a la página web directamente, en lugar de a través del programa?

Incluso si usted no tiene una respuesta que será por completo el trabajo, cualquier cosa que ayuda los disuadirá estaría bien.

Actualmente estaremos implementando:

Autenticación HWID utilizar el programa User-Agent autenticación para acceder a la página web Las listas negras de IP instantánea a cualquiera que acceda a la página web sin la adecuada User-Agent

¿Fue útil?

Solución

No confíe en agente de usuario o cualquier tipo de huella digital navegador, encabezados HTTP son fácilmente falsificados / falso.

Se podría añadir alguna señal secreta (por ejemplo. La contraseña / login) a la solicitud y enviarla a través de SSL para prevenir el espionaje.

O mejor, usar un certificado de cliente SSL.

Editar ¿Usted va a distribuir el programa de VB? Si es así, como se mencionó bobince, no hay manera de que pueda evitar que un hacker decidido a solicitudes de forja. Puede elevar la barra, pero será seguridad por oscuridad . Incluso con certificados de clientes, el hacker será capaz de extraer el certificado de su programa y enviar solicitudes modificados.

Mientras usted acepta solicitudes del cliente, estas solicitudes se pueden falsificar. Tratar con él.

Otros consejos

Una opción es que puede establecer una encriptada token en el encabezado de la solicitud.

El Token sólo se puede utilizar para un solo tiempo. Si la misma razón se envía de nuevo al servidor lo rechazará, medios u tiene que mantener la copia de fichas utilizadas en el lado del servidor.

una opción es utilizar y verificar una cabecera personalizada, que un navegador web no envía, hice una cosa similar a un programa de la mía. Hacer eso sábana de las otras verificaciones que está haciendo. En serverside, tiene la secuencia de comandos del servidor verificar la cabecera personalizada y simplemente redirigir si la cabecera está mal

  • Trate de cifrado de todos ur páginas utilizando las una clave larga (512bits o más) utilizar el HWID como una sal.

    De esta manera sólo se ur programa puede decodificar y hacerla como una página web.

      

    en.wikipedia.org/wiki/Salt_%28cryptography%29

  • C # y VB.net aquí:

      

    obviex.com/samples/hash.aspx

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top