Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - @XSStringManolo

#1501
Tal cual te lo dice Engel Lex. El firewall bloquea el ping. Si el ping pasa el firewall entonces el wireshark si lo puede capturar. Te vendrán tanto tu IP pública como la IP a donde debes responder el ping. Esta última puede ser la IP de un proxy o la IP del equipo original que hizo el ping.
#1502
Yo por lo que ten entendido en C++ operadores unarios en preincremento la ejecución es más rápida. No sé nada más.
#1503
PHP / Re: Ocultar contraseña en archivo PHP?
2 Octubre 2019, 17:01 PM
Cita de: animanegra en  2 Octubre 2019, 13:51 PM
Puedes optar como te decía a replicar el cifrado de la contraseña mediante la pass del usuario y tu password. La creación de usuarios pasaría por la aceptación por tu parte de la cuenta de usuario momento en el que generas una pass aleatorioa para el usuario y una simetrica cifrada con la pass aleatorioa y la tuya. Cuando el usuario entra cambia la password y se vuelve a cifrar la simetrica con la nueva pass del usuario. Con lo que cada usuario podría acceder a sus datos y tu a los de todos (como Dios ^^).
Eso tiene el problema de que tienes que hacer tu los usuarios o exigir al usuario a que espere el check tuyo y que si te roban tu pass maestra tienen acceso a todo, como tu. Pero así ninguna password ni dato se almacena físicamente en limpio en el servidor.
No te estoy entendiendo, podrías poner un ejemplo con contraseñas?
Haré:
Cifrado(TextoPlano, MiContraseñaPública);

Cómo dices tú de hacerlo?


Cita de: MinusFour en  2 Octubre 2019, 16:02 PM
Esto no tiene nada de sentido. Si tu generas un par de llaves y usas ese par de llaves para cifrar la información del usuario solo tú puedes descifrar la información y tus usuarios no, especialmente offline. Tu pones la llave privada en el servidor y descifras en el servidor y volvemos al mismo problema. Tu compartes la llave privada con todos tus usuarios y bueno... pro tip, no lo hagas.

Si tu quieres leer la información cifrada por todos tus usuarios tienes dos opciones:

1) Duplicas la información cifrada, un juego con tu llave otra con su llave.
2) Generas una llave para ti y el usuario y usan esa llave para cifrar y descifrar la información.

Lo único que te permite la primera es tener una llave "maestra" para toda la información, con el costo de que... duplicas la información... No lo veo como una buena solución. Encima que tienes un punto de fallo único con esa llave.

La segunda es mucho mejor en mi opinión. No necesitas cifrado asimétrico porque necesitas compartir la llave de todas formas. Si se compromete una llave no se compromete toda la información (por favor no vayas a poner todas las llaves en la misma carpeta, en un mismo host).

También tienes que considerar la mejor forma de compartir la llave simétrica. Aquí si puedes usar cifrado asimétrico. Le dices al usuario que necesitas una llave pública para cifrar la llave simétrica y listo.

Si tu necesitas leer la información, no hay más remedio que expandir la superficie de ataque (donde ahora tenían que atacar a usuarios en específico, ahora tu te vuelves un punto de ataque también) y tu incrementas la superficie por mucho dependiendo de tus prácticas.
No no, cuando dije de cambiar el esquema, me refería a no dejar a los usuarios acceder a la información directamente usando la contraseña privada. Tengo pensado que para que accedan a la información me manden un correo. Yo la descifro offline y la envio descifrada al correo tras validar que sea el correo asociado a la información a la cual hace request.
Así aunque se comprometa el servidor no se puede hacer nada. Yo obtengo  la info en un equipo, desconecto la red, accedo a otro equipo offline que descifre y me devuelva la infofmación. Es un poco rollo, pero me parece más seguro haciendo unas cuantas comprobaciones.

#1504
Cita de: #!drvy en  1 Octubre 2019, 23:25 PM
No se puede, el foro censura automáticamente las contraseñas de los usuarios. La mia es ********.


Saludos
Jajajajaja la mia es: "seguroqueesesta" ups no me la censuró :xD

A mi me gusta usar palabras que veo todos los días en mi casa y le aplico algún cifrado que puedo hacer de forma sencilla.

Por ejemplo estoy viendo el smartphone SAMSUNG.
54M5UN6

Y le aplico cesar y corriendo.
65N6VO7

O veo una botella de coca-cola que pone sabor original

A partir de esta frase aplico cualquier cifrado que se me ocurra al momento para ese sitio en específico. Así de una palabra o frase puedo sacar varios cifrados para varias webs distintas:
Frase original -> sabor original

Layout de teclado Android -> @!;94 948/8,!(

Orden alfabético con ñ inverso a=z b=y -> hzymi mirtrnzo

Suma orden alfabético -> s+a=t b+o=q  r+o=H r+i=A g+i=o n+a+l=z ->tqHAoz

Cesar-1 -> rZañq ñqhfhmZk

Intercalado -> osraibgoirnal

Letra de al lado derecho layout Android -> dsnpt ptohomsñ

Opuesto simétrico android layout-> lñcwu wuehexñs

Duplicado sílabas -> sasaborbor ooririgiginalnal

Cada sílaba al revés -> asronoiriglan

Vocales primero consonantes después -> aooiiasbrrgnl

#1505
PHP / Re: Ocultar contraseña en archivo PHP?
1 Octubre 2019, 23:37 PM
Cita de: animanegra en  1 Octubre 2019, 21:12 PM
Pero el usuario introduce ell pass en limpio que es cuando la necesitas descifrar para acceder a la passphrase de cifrado simétrico que cifra la info del usuario y cuando se almacena en memoria para descifrar. El resto del tiempo esta cifrada con esa contraseña que sólo está en la cabeza del usuario y en forma de hash en tu base de datos.

El atacante que entre no podrá mas que acceder a las contraseñas en uso si hace el volcado de memoria. No al resto que estan cifradas con la password de cada usuario.

+ 10000 puntos de carisma a lo que comenta engel. Tu pasas la información cifrada al cliente y que él la descifre. Si no tienes la información descifrada en el lado del servidor aunque hackeen el servidor no pueden acceder a la información.

En realidad menos. porque si a un cliente le hackean es su culpa no tuya. Y si hackean al cliente, tengas tu la informacion descifrada o sólo la cifrada van a poder acceder a dicha información. Solo que en el caso que describe engel si te hackean sólo a ti no acceden a ninguna información.
Si utilizo este método el problema está en si quiero acceder YO a la información, ya que no tengo la contraseña del usuario para descifrar la inormación. Y yo necesito proporcionar una contraseña para que el servidor vaya cifrando los datos que envian los usuarios.

Cambiaré el diseño de la plataforma y ya. Uso asimétrica, cifro con pública, y descifro offline con privada.

#1506
Dudas Generales / Re: es posible esto?
1 Octubre 2019, 20:51 PM
Cita de: aprendiendohacking2020 en  1 Octubre 2019, 17:13 PM
Tengo la direccion IP de una persona.. el tema que la persona modifico su IP, mi duda es la siguiente.. puedo rastrear la nueva direccion IP de la persona con alguna herramienta? por ejemplo nmap o alguna otra herramienta xd
Si tienes un fingerprint único de su red desde fuera puedas buscarla entre el rango de su ISP. No es algo viable pero si posible bajo las condiciones adecuadas.
#1507
A mi me parece una forma malísima de generar contraseñas. Como dice Drvy a base de diccionarios acabaría saliendo. Hay equipos y redes que prueban millones de combinaciones distintas cada segundo.
Mira la hora y a partir de ella generas una serie:
20:45

8045


Le metes la hora en letras le das la vuelta intercalando y listo:
OchoCuarentaCinco

ocniCatnerauCohcO

o8c0n4i5C8a0t4n5e8r0a4u5C8o0h4c5

Si la quieres de 8 caracteres pues pillas los 8 primeros xD
o8c0n4i5

#1508
No hay problemas en que use la función array no? O está deprecated?
#1509
PHP / Re: Ocultar contraseña en archivo PHP?
1 Octubre 2019, 16:53 PM
Cita de: engel lex en  1 Octubre 2019, 14:49 PM
el problema es que estás pensando en un caso absurdo... no porque no pueda pasar, sino porque ya saltaron tu seguridad, es decir, ya perdiste el juego... es mentira que vas a revisar el codigo cada 5 minutos, incluso podrían a lo que sea que hagas agregar codigo para enviar todo a otro lugar y sacar tu contraseña sea como sea...

no deben entrar a tu servidor, ese caso implica que ya perdiste, debes invertir tiempo, conocimiento y tecnología en defender el status del servidor
El tema es que hay demasiadas fallas de seguridad para garantizar seguridad al 100% en el servidor y necesito manejar información sensible online. Podría tener el procesador un fallo de seguridad independientemente de la seguridad que yo implemente e irse todo a tomar por culo. XD

Cita de: Shell RootEn primer lugar esta malo todo, xD se supone que el banco dice que no debes entregar información de ninguna clase y menos ingresarla en sitios web que no sea el banco.
Porque no pueden asegurar la seguridad de un sitio externo. Eso no implica que los datos vayan a estar menos seguros que en el banco.

Cita de: Shell RootAsí que no entiendo el motivo por el cual deban agregar su informacion bancarea en el sitio web.
Porque quieres y estás de acuerdo con el uso que se va a hacer de tu cuenta. Puede tener solo 10$ y dar el PIN para que el sitio haga inversiones por ti con tu dinero automáticamente.


Cita de: MinusFour en  1 Octubre 2019, 16:01 PM
Personalmente, yo creo que si la información se puede descifrar del lado del servidor y una persona tiene acceso total al servidor entonces no hay forma de garantizar que la información no se puede descifrar por esa persona. Solo tendrías que estar escuchando las respuestas del servidor para obtener la información descifrada.

La única forma de garantizar que la información no se pueda descifrar si te comprometen el servidor, es que no se descifre la información del lado del servidor. Tendrías que almacenar la información cifrada solamente y dejar que el cliente descifre (y quizás hasta dejarle cifrar) la información.
Me parece peor el remedio que la enfermedad jeje. Más vectores de ataque abiertos.

Haré obscuración muy muy basta. Lleno todo el server de scripts, archivos funciones y variables sin nombres.
#1510
Y porque creas la cuenta antes de validarla?
Simplemente no crees la cuenta hasta que pinchen en el link del correo.
Verifica también si la cuenta ya existe para que un usuario no se haga varias cuentas sin querer a base de F5.


Yo personalmente lo haría así:

-Crear un script "cuentas/registrar.php" que otorgue una cookie al usuario y cree dinámicamente dos nuevos archivos:
1) "temporal/cuenta-123456789.php" cuando se complete correctamente el registro.
Y
2) "automatizacion/borrar_link_cuenta-123456789.php".

-Dentro de "temporal/cuenta-123456789.php" estará el nombre de la cuenta y una función para crear la cuenta. En la función tomaría como parámetro la cookie para que solo el cliente que rellenó el usuario pueda activar la cuenta.(esto es opcional, también puedes darle un código de activación único).

-Al correo del usuario se envía:
Bienvenido a example.com, para finalizar el registro ingrese a https://example.com/temporal/cuenta-123456789.php
Tras visitar el enlace su cuenta será creada. Será redirigido automáticamente al portal de ingreso. Para acceder ingrese con el usuario y la contraseña que facilitó en el registro.

-Desde "temporal/cuenta-123456789.php" arrancas el script "automatizacion/borrar_link_cuenta-123456789.php" este script se ejecuta hasta pasados 10 minutos desde el envio del correo al usuario y borra el archivo "temporal/cuenta-123456789.php" pasado ese tiempo. O si se activó la cuenta también lo borras. En caso de que la cuenta se active mediante el link pero el usuario no haga login en la cuenta, yo borraría la cuenta porque es sospechoso que se active la cuenta pero el usuario no haga login.
Puedes habilitar un "Renviar Correo" donde se vuelva a crear un archivo "temporal/cuenta-1737281928.php" tras completar un captcha.

-Para el nombre de archivo "temporal/cuenta-123456789.php" generas el número 123456789 con un algoritmo de (PRNG) Pseudo Random Number Generator con entropía por hardware. Puedes usar alguna función, librería o puedes crearlo tu mismo con pocas líneas con un contador, un timer, un for y una operación matemática como podría ser una multiplicación al resultado para expandirlo y que un cambio mínimo en el resultado genere un resultado muy diverso. Te recomiendo codificar el resultado en base64 varias veces para evitar ataques de fuerza bruta devido a poco tamaño de url, de forma que te quede algo como:
"temporal/cuenta-Vm0wd2VFMUdiRmRpUm1SWFYwZG9WbGx0ZUV0WFJteDBaRWhrVmxKc2NIcFdNakZIVjBaS2MyTkliRmRpVkZaeVZtMTRTMlJXUm5OaVJsWlhZbFpKZWxaclpEUldNVnBXVFZWV2FHVnFRVGs9.php" en vez de temporal/cuenta-123456789.php" un hash sería más seguro, pero si el PRNG es largo y seguro, no tienes problemas en usar base64.


Habrá varias librerías y frameworks que te hagan todo esto automáticamente.

De todas formas es bastante sencillo y rápido de implementar uno mismo.