Cómo podemos proteger Nuestro Servidor de Ataques de fuerza Bruta

Si tienes un servidor Linux, este artículo te interesa. Voy a explicar una forma muy simple para aumentar la seguridad del servidor y evitar que usuarios malintencionados puedan acceder a él o adivinar tus contraseñas.

Seguro que si sigues interesado en este tema es porque dispones de un servidor Linux y acertaría si digo que te conectas a él a través de SSH. Pues bien, voy a enseñarte a evitar que usen la fuerza bruta para descubrir tu contraseña de acceso.

Lo primero que tenemos que hacer es instalar fail2ban. En debian podemos usar este comando ‘apt install fail2ban‘.

Una vez hecho, configurarlo es muy sencillo, debemos crear un fichero que indique el servicio que queremos proteger y como queremos hacerlo. Vamos a editar el siguiente fichero ‘nano /etc/fail2ban/jail.local

Un ejemplo para SSH sería este

[sshd]
enabled = true
port = ssh
logpath = /var/log/auth.log
maxretry = 10
findtime = 60

En este caso si se detecta que se intenta acceder más de 10 veces (maxretry) o varias veces en menos de 60 segundos (findtime) banea esa IP.

Una vez editado ese fichero es necesario reiniciar ‘sudo systemctl restart fail2ban‘. También puedes comprobar el estado de fail2ban con el siguiente comando ‘sudo systemctl status fail2ban‘.

Y para revisar que la configuración que has añadido está funcionando puedes hacerlo así: ‘sudo fail2ban-client status sshd‘.

También es posible que quieras desbloquear a un usuario, para ello debes utilizar el comando anterior para ver si realmente están dentro del listado de IPs baneadas y una vez encontrada, lanzar el siguiente comando ‘sudo fail2ban-client unban <IP-a-desbanear>‘.

También funciona para WordPress

Para ello tienes que crear un archivo en /etc/fail2ban/filter.d/wp-login.conf con el siguiente contenido:

[Definition]
failregex = <HOST> - - \[.*\] "POST /wp-login.php
ignoreregex =

Este filtro busca en los registros del servidor las instancias de intentos fallidos de POST a wp-login.php, que es el formulario de inicio de sesión de WordPress, y captura la dirección IP asociada con ese intento.

Después de crear el filtro, debes configurar una jaula en /etc/fail2ban/jail.local que lo utilice:

[wp-login]
enabled = true
filter = wp-login
action = iptables[name=WordPress, port=http, protocol=tcp]
logpath = /var/log/apache2/access.log
maxretry = 5
bantime = 3600

Esta configuración habilita la jaula wp-login, utiliza el filtro que acabas de crear, define una acción que actualiza iptables para bloquear las solicitudes, especifica la ubicación de los registros de acceso de Apache (ajusta según tu servidor web y configuración), establece un máximo de 5 intentos antes de bloquear la IP, y establece el tiempo de bloqueo en 3600 segundos (1 hora).

Dispones de más información en el siguiente enlace: Fail2Ban Info

El Eslabón más Débil: Ingeniería Social

Como ya hablamos en su momento, el usuario suele ser el eslabón más débil en un sistema. Hoy vamos a profundizar más sobre este tema para entender mejor cómo los cibercriminales engañan a los usuarios para conseguir acceso a los sistemas.

En seguridad informática se debe siempre intentar atacar al eslabón más débil, el usuario. Un alto porcentaje de la gente que utiliza ordenadores o dispositivos conectados a internet tiene escasos o nulos conocimientos de informática y desconoce el peligro de la información de internet. Por ello, los atacantes son capaces de utilizarlo en su beneficio.

Será más fácil engañar a una persona para que utilice un USB infectado, para que abra un correo o incluso para que nos facilite su contraseña haciéndonos pasar por un administrador del sistema, que intentar romper un algoritmo de cifrado o encontrar un hueco en el protocolo TLS.

La ingeniería social es el arte de engañar y manipular a las personas para que revelen información confidencial.

Esta forma de ataque, surge debido a que los cibercriminales buscan maximizar su beneficio. La seguridad de los sistemas informáticos actuales es muy alta, por lo que se busca la parte más débil.

Según uno de los mejores ingenieros sociales y hacker de los últimos tiempos, Kevin Mitnick, las claves de la ingeniería social son:

  1. Todos queremos ayudar.
  2. El primer movimiento es siempre de confianza hacia el otro.
  3. No nos gusta decir «No».
  4. A todos nos gusta que nos alaben.

La ingeniería social puede emplearse en cualquier etapa de un ataque, desde la búsqueda de vulnerabilidades, obteniendo información sobre la empresa mediante la persuasión de un empleado al hacerle creer que somos un periodista o un nuevo empleado; hasta el ataque en sí, logrando que alguien ejecute un archivo infectado haciéndonos pasar por una persona de confianza. Una de las técnicas de ingeniería social más comunes es el phishing.

El phishing es una técnica que consiste en suplantar una identidad para obtener información, normalmente credenciales de acceso como contraseñas y usuarios.

Vamos a ver un ejemplo

Enviar un correo a una persona haciéndonos pasar por un familiar que desea realizarle una transferencia y solicitando su número de tarjeta de crédito o varios datos personales. Si la persona carece de conocimientos de seguridad, probablemente revelará dicha información al atacante.

En la imagen siguiente, vemos cómo un atacante envía un correo haciéndose pasar por un banco, de modo que la víctima crea que está accediendo al sitio web real cuando, en realidad, está entregando sus credenciales al atacante.

Para no alargar mucho este artículo, os diré que hay varios métodos de ingeniería social, de los que hablaremos en siguientes entradas. Los podemos clasificar en:

  • Técnicas pasivas.
  • Técnicas no presenciales.
  • Técnicas presenciales no agresivas.
  • Técnicas presenciales agresivas.

 

La ingeniería social es una de las amenazas más insidiosas en el ámbito de la ciberseguridad, explotando la confianza y la manipulación psicológica para acceder a información confidencial. Es crucial estar siempre alerta y educarnos sobre estas tácticas para no caer en sus trampas. Recuerda, la mejor defensa es la prevención: verifica siempre la autenticidad de las solicitudes de información y nunca compartas tus datos personales sin confirmar la identidad del solicitante.

El Truco Definitivo de WhatsApp que no Conocías

Seguro que usas WhatsApp todos los días y seguro que hay muchas funciones que se han ido introduciendo poco a poco y que tú aún no conoces que tiene. Hoy te traigo una función muy útil si quieres guardar un secreto.

Hace un tiempo WhatsApp sacó una forma de bloquear ciertos chat. Era necesario utilizar la huella dactilar para desbloquearlos. Aunque no se pudiera ver su contenido, seguían saliendo en un apartado llamado «chat bloqueados». No obstante, existe una forma de evitar que alguien descubra que esos chats existe y todo ello protegido por un código secreto.

Así es como se ve cuando bloqueamos un chat:

Aunque es necesario la huella dactilar para ver su contenido, se ve claramente que algo está oculto.

Hay un ajuste que permite utilizar un código secreto para desbloquear chats y para ello tienes que habilitar esta opción: Dentro del listado de chat bloqueados pulsamos sobre los tres puntos de arriba a la derecha, después seleccionamos la opción de «ocultar chat bloqueados» y creamos un código secreto.

Tras activar Ocultar chats bloqueados vas a necesitar establecer un código secreto que puede ser cualquier texto que quieras, incluyendo emojis. Obviamente, la idea es que sea un texto que sólo se te ocurra a ti y no sea fácil de adivinar.

La idea es tan sencilla como que los chats bloqueados no se van a mostrar ya en la lista de chats, aunque se deslice hacia abajo. En su lugar, el único modo de ver tus chats secretos será buscar el código secreto en el buscador de WhatsApp. Al hacerlo, el resultado es la carpeta Chats bloqueados y desde ahí ya podrás acceder a esos chat bloqueados.

Gracias a esto los chats privados serán prácticamente invisibles.

Fuente: xatakandroid.com

OWASP TOP 10 – Vulnerabilidades Web más Importantes

Hoy os presento OWASP, el proyecto abierto de seguridad en aplicaciones Web. Una fundación sin ánimo de lucro dedicada a ayudar a las organizaciones con documentación, herramientas, vídeos, foros, etc.

Según explican ellos:

La fundación OWASP es una entidad sin fines de lucro para asegurar el éxito a largo plazo del proyecto. No está afiliada a ninguna compañía tecnológica, lo que les permite proveer información sobre seguridad en aplicaciones sin sesgos, práctica y efectiva.

Casi todos los asociados con OWASP son voluntarios, incluyendo la junta directiva de OWASP, líderes de capítulos, líderes y miembros de proyectos.

Apoyan la investigación innovadora sobre seguridad a través de becas e infraestructura.

Su proyecto más importante y en el que nos centraremos en este artículo es OWASP TOP 10, un informe que se actualiza cada 3 o 4 años con las 10 vulnerabilidades más importantes, es decir, con más riesgo. Desde la fundación recomiendan que todas las empresas incorporen ese informe en sus procesos para minimizar los riesgos de seguridad.

El último informe publicado es de 2021, aunque es posible que lo actualicen pronto. Lo puedes obtener aquí: OWASP Top 10:2021.

En el informe se pueden ver los cambios con respecto a la versión anterior. Y ver las subidas y bajadas de importancia de las vulnerabilidades más utilizadas.

En el informe de 2021 hay tres nuevas categorías con respecto al anterior (2017) y algunos cambios de nombre y alcance. Estos cambios son debidos a que se han centrado en la causa principal de la vulnerabilidad o riesgo en lugar del síntoma.

Nuevas categorías

A04:2021-Insecure Designe

El diseño inseguro es una categoría nueva enfocada en vulnerabilidades causadas por un mal diseño de la aplicación. Esta vulnerabilidad debe diferenciarse de otras, ya que puede haber un buen diseño con una implementación deficiente que cause diferentes vulnerabilidades.

Por ejemplo, las preguntas de seguridad para recuperar una contraseña (ciudad de nacimiento, nombre de la primera mascota, etc.) no aseguran suficientemente la identidad del usuario. Sin embargo, una vulnerabilidad que permite cambiar el correo de recuperación de una contraseña es un problema de implementación, no de diseño. Las CWE destacadas son CWE-522 (credenciales insuficientemente protegidas) y CWE-266 (incorrecta asignación de permisos).

A10:2021-Server Side Request Forgery (SSRF)

La falsificación de solicitudes del lado del servidor (SSRF) fue la categoría más votada en la encuesta a la comunidad. Similar a cómo el XSS tuvo su propia categoría, ahora el SSRF tiene la suya. Esta vulnerabilidad permite que el servidor haga una solicitud HTTP a un dominio o IP especificada por un atacante.

Esto puede permitir acceso a servicios internos, robo de datos sensibles, escalamiento de privilegios y ejecución remota de código. Esta categoría está descrita en la CWE-918 (Server-Side Request Forgery – SSRF).

Número 1 de la lista

A01:2021-Broken Access Control

La pérdida de control de acceso ha pasado de la quinta (5ª) posición a la primera (1ª) en el ranking debido a que es una de las categorías con mayor incidencia en las aplicaciones testeadas, con un 3,81%, y puede causar un impacto significativo.

Esta categoría se enfoca en garantizar que los usuarios no puedan realizar acciones fuera de sus funciones permitidas. Entre las CWE destacadas se encuentra la CWE-200, que aborda la exposición de información sensible a actores no autorizados.

Más información

Puedes obtener más información en su web owasp.org, donde explican cada una de las vulnerabilidades analizadas. Además podrás obtener más información sobre cómo se clasifican y los motivos de la organización en categorías, así como conocer el listado de fuentes de datos utilizados.

Como guardar una copia de seguridad del Registro de Windows

El Registro de Windows es un componente muy importante del sistema operativo Windows. Es donde se guardan todas las opciones y configuraciones. Es por eso que es importante tener precaución a la hora de realizar cambios en el registro. Si haces cambios incorrectos, esto podría provocar que Windows ya no se inicie, que se bloquee inesperadamente o que algunas aplicaciones ya no funcionen como deberían. Por lo tanto, siempre debes realizar una copia de seguridad del Registro de Windows antes de realizar cualquier cambio.

En este tutorial, explicaremos cómo realizar una copia de seguridad del registro de Windows de forma manual, para que puedas hacer cambios con mayor seguridad.

  1.  Para abrir el registro, lo más sencillo es pulsar la «tecla de windows + r» (nos abrirá el diálogo para ejecutar comandos), escribir «regedit» y hacer clic en Aceptar.
  2. Se te abrirá una ventana del control de cuentas de usuario o UAC que deberás aceptar.
  3. En este punto ya tendrás abierto el editor del registro. Ahora deberás irte a la esquina superior izquierda y pulsar en «Archivo» («File») y seleccionar la opcion «Exportar» («Export»).
  4. Después te pedirá guardar el archivo en la ruta que tu elijas. Lo mejor es utilizar un nombre que sea identificativo para futuras consultas, como por ejemplo «bckRegistro_20241231.reg» (AñoMesDía, así será más facil de ordenar por nombre).
  5. Pulsa sobre el botón de guardar y ya podrás ver la copia de seguridad en la ubicación escogida. Es recomendable tener este archivo también en una ubicación fuera del ordenador, como la nube o un USB.

En caso de necesitar recuperarla los pasos son los mismos, pero deberá seleccionar la opción «Importar» en lugar de «Exportar». También es posible hacer doble clic en el archivo que se ha creado y seguir las instrucciones.

Páginas web para mejorar tu SEO de forma Gratuita

  1. www.pinterest.com
  2. www.behance.net
  3. vimeo.com
  4. society6.com
  5. github.com
  6. about.me
  7. www.reddit.com
  8. visual.ly/users
  9. www.merchantcircle.com
  10. www.brownbook.net
  11. www.hotfrog.com
  12. wv.yalwa.com
  13. us.enrollbusiness.com
  14. www.callupcontact.com
  15. www.nextbizthing.com
  16. directoryof.business
  17. www.bloglovin.com
  18. trello.com
  19. 500px.com
  20. www.kickstarter.com
  21. www.reverbnation.com
  22. www.articleted.com
  23. www.quora.com
  24. www.instructables.com
  25. pinshape.com
  26. mix.com
  27. digg.com
  28. www.bibsonomy.org
  29. folkd.com
  30. www.meetup.com
  31. disqus.com
  32. www.behance.net
  33. visual.ly
  34. www.answers.com
  35. trello.com
  36. minds.com
  37. seekingalpha.com
  38. goodreads.com
  39. www.last.fm
  40. soundcloud.com
  41. flipboard.com
  42. 3dwarehouse.sketchup.com
  43. www.indiegogo.com
  44. www.dailystrength.corg
  45. eternagame.org
  46. dasauge.com
  47. tripline.net
  48. creativelive.com
  49. issuu.com
  50. www.quora.com
  51. www.2shared.com
  52. www.filefactory.com
  53. www.slideshare.net
  54. www.mediafire.com
  55. youtube.com
  56. www.scribd.com
  57. behance.net
  58. list.ly
  59. wattpad.com
  60. sites.google.com
  61. depositfiles.com
  62. edocr.com
  63. atlasobscura.com
  64. www.hidubai.com
  65. dubai-businessdirectory.com
  66. www.pexels.com
  67. forums.androidcentral.com
  68. yoys.ae
  69. medium.com
  70. devpost.com
  71. pinshape.com
  72. creativelive.com
  73. app.sintro.com
  74. www.last.fm
  75. gravatar.com
  76. themeforest.net
  77. archive.org
  78. www.viki.com
  79. stackoverflow.com
  80. ted.com
  81. instructables.com
  82. bloglovin.com
  83. www.articleted.com
  84. www.vingle.net
  85. tryootech.com

Material You (Material Design 3) – Tu mejor aliado en el diseño

Hace unos años, Google se propuso crear un sistema de diseño integral y en 2021 lazó  «Material You» (junto con Android 12), y desde ese lanzamiento ha evolucionado hasta el Material Design 3 que tenemos en la actualidad. Este enfoque de diseño busca revolucionar la personalización y estética de los dispositivos, llevando la experiencia del usuario a un nuevo nivel.

«Material You» no solo está disponible en dispositivos Google Pixel, sino también para muchos dispositivos Android, incluyendo tabletas, relojes inteligentes y más. Esto permite a los usuarios disfrutar de una experiencia coherente y personalizada en todos sus dispositivos.

¿Qué es?

Material Design es un sistema de diseño integral dirigido a diseñadores UX y UI, proporcionando un marco estandarizado que combina principios visuales y funcionales. Esta guía de estilos ayuda a crear interfaces de usuario coherentes y atractivas en diversas plataformas y dispositivos. Su objetivo es combinar los principios clásicos del buen diseño con la innovación tecnológica.

Material You introduce un enfoque más simplificado y minimalista, caracterizado por menos sombras, menos estilos de letra, formas más redondeadas y una estética más limpia.

Información y uso

En su web m3.material.io puedes obtener gran cantidad de recursos y componentes que te ayudarán en tus proyectos. Ellos lo describen de la siguiente forma:

Material Design es un sistema adaptable de directrices, componentes y herramientas que respaldan las mejores prácticas de diseño de interfaces de usuario. Respaldado por código abierto, Material Design agiliza la colaboración entre diseñadores y desarrolladores, y ayuda a los equipos a crear rápidamente productos atractivos.

 

¿Estás preparado para utilizarlo en tus proyectos?

Puedes aprender a utilizarlo y mejorar tus habilidades como desarrollador en los cursos gratuitos que ofrece google.

Rarezas y cosas que no sabías de JavaScript

Si eres programador seguro que alguna vez has utilizado JavaScript, aunque sea para pequeñas funciones o mini proyectos. Lo que puede que no sepas es que hay ciertos comportamientos que te podrían resultar extraños o que no son intuitivos para los desarrolladores.

Este sería un ejemplo de lo que os hablo:
'1' + 1 --> "11"
'1' - 1 --> 0

JavaScript. Extraño y hermoso al mismo tiempo, es seguramente el lenguaje de programación que habría inventado Pablo Picasso.

Nulo es un objeto

Empecemos con una de las peculiaridades más conocidas de JavaScript: la naturaleza de null. Aunque null debería representar la ausencia total de valor, en JavaScript se identifica como un objeto, lo que genera cierta confusión. Es contradictorio, ¿verdad? ¿Cómo puede null ser un objeto cuando su propósito es justamente representar la ausencia de cualquier valor significativo? Sin embargo, así es como funciona JavaScript. Aquí tienes la prueba:

A pesar de que null se clasifica como un objeto, no se considera una instancia de ningún objeto. En JavaScript, los valores son instancias de objetos base; por ejemplo, cada número es una instancia del objeto Number, y cada objeto es una instancia del objeto Object. Afortunadamente, en este caso, la lógica se mantiene: dado que null representa la ausencia de valor, no puede ser una instancia de nada. Por eso, la siguiente evaluación es falsa:

NaN es un número

Si ya el null te empezaba a romper la cabeza, el NaN te la va a terminar de romper del todo.  NaN, proviene del acrónimo en inglés «Not a Number» (en español: no es un número). Esto debería hacerte pensar que si comprobamos el tipo «typeof NaN«, nos debería indicar que no es un número, pero no es así. Aquí el ejemplo:

Además, NaN no se considera ni siquiera igual a sí mismo. De hecho no NaN es igual a nada . La única forma de confirmar que algo es NaN a través de la función isNaN().

Un array sin claves es FALSE

Esta es la comprobación que se puede hacer para demostrar el concepto:

new Array() == false  –> Esto da como resultado true

Para entender lo que sucede aquí, es crucial familiarizarse con los conceptos de «verdad» y «falsedad» en JavaScript. Estos términos se refieren a cómo ciertos valores se comportan como verdaderos o falsos en contextos booleanos, algo que puede resultar confuso, especialmente si tienes experiencia en lógica formal o filosofía.

He leído varias explicaciones sobre qué significan estos términos, y la que considero más clara es esta: en JavaScript, cada valor no booleano tiene una propiedad booleana implícita que se activa cuando se le pide que se comporte como un booleano. Esto ocurre, por ejemplo, cuando comparas ese valor con un booleano.

Dado que no se pueden comparar directamente manzanas con peras, cuando JavaScript necesita comparar valores de diferentes tipos de datos, primero los «convierte» a un tipo de dato común. Valores como false, 0, null, undefined, cadenas vacías y NaN se convierten en false, pero solo dentro de la expresión en cuestión. Aquí tienes un ejemplo:

var someVar = 0;
alert(someVar == false); // se evalúa como true

En este caso, estamos comparando el número 0 con el booleano false. Dado que estos tipos de datos son incompatibles, JavaScript convierte internamente 0 a su equivalente booleano, que es false.

Quizás hayas notado que no mencioné las matrices vacías en la lista de valores «falsos» anterior. Las matrices vacías son casos curiosos: en realidad, se evalúan como verdaderas, pero cuando se comparan con un booleano, se comportan como si fueran falsas. ¿Confuso? Con razón. Aquí tienes otro ejemplo:

var someVar = []; // array vacío
alert(someVar == false); // se evalúa como true
if (someVar) alert('hello'); // se ejecuta el alert, así que someVar se evalúa como true

Para evitar este tipo de conversiones automáticas, puedes utilizar el operador de comparación estricta (===), que compara tanto el valor como el tipo de dato, a diferencia de ==, que solo compara valores. Así:

var someVar = 0;
alert(someVar == false); // se evalúa como true – cero es un valor falso
alert(someVar === false); // se evalúa como false – cero es un número, no un booleano

Este tema es extenso y recomiendo investigar más sobre la coerción de datos, que, aunque no es un concepto exclusivo de JavaScript, es especialmente relevante en este lenguaje. Si te interesa profundizar en cómo JavaScript maneja estas comparaciones internamente, te sugiero consultar la sección 11.9.3 de la especificación ECMA-262.

 

Minientrada

Google aumenta las recompensas por vulnerabilidades en Chrome hasta 250.000 dólares

Google ha decidido incrementar las recompensas de su programa de detección de vulnerabilidades en Chrome, ofreciendo ahora hasta 250.000 dólares para investigadores de seguridad que descubran fallos críticos. Este aumento en las recompensas refleja la continua prioridad de Google en la seguridad de su navegador.

El programa de recompensas, que existe desde 2010, ya ha pagado más de 30 millones de dólares a investigadores. Las nuevas recompensas incluyen aumentos significativos en las categorías de vulnerabilidades relacionadas con la «escalada de privilegios en Windows» y otros errores críticos.

El gigante tecnológico también ha anunciado mejoras en la documentación y recursos para investigadores, con el fin de facilitar la identificación de vulnerabilidades. Estos cambios subrayan la importancia de mantener Chrome seguro frente a posibles ataques y explotaciones.

¡Descubre Scanum.io: La Solución Definitiva para el Análisis y la Visualización de Datos!

En la era digital, la capacidad de analizar y visualizar datos de manera eficiente es crucial para el éxito de cualquier negocio. Aquí es donde entra en juego Scanum.io, una plataforma innovadora diseñada para transformar la forma en que manejamos la información.

¿Qué es Scanum.io?

Scanum.io es una poderosa herramienta que permite a las empresas y a los profesionales convertir datos complejos en información valiosa y visualmente atractiva. Su interfaz intuitiva y sus potentes funcionalidades hacen que el análisis de datos sea más accesible y efectivo que nunca.

Características Principales

  • Análisis de Datos Avanzado: Con Scanum.io, puedes realizar análisis profundos y detallados de tus datos en cuestión de minutos. La plataforma soporta una amplia variedad de fuentes de datos y ofrece herramientas de análisis robustas que facilitan la toma de decisiones informadas.
  • Visualización Interactiva: Transforma tus datos en gráficos interactivos y personalizables. Scanum.io ofrece una amplia gama de opciones de visualización, desde gráficos de barras y líneas hasta mapas geográficos y diagramas de dispersión.
  • Integración Sencilla: Integrar tus datos con Scanum.io es fácil y rápido. La plataforma se conecta sin problemas con tus sistemas existentes, permitiendo una importación y sincronización de datos sin complicaciones.
  • Seguridad y Privacidad: La seguridad de tus datos es una prioridad. Scanum.io implementa las mejores prácticas en ciberseguridad para garantizar que tu información esté siempre protegida.
  • Colaboración en Tiempo Real: Facilita la colaboración entre equipos con funciones de compartición de datos y visualizaciones en tiempo real. Trabaja junto a tus colegas en proyectos y presentaciones sin importar dónde te encuentres.

Algunos ejemplos de lo que puede hacer:

Scanum.io no es solo una herramienta, es tu aliado estratégico en la gestión y visualización de datos. Con su enfoque en la simplicidad, seguridad y colaboración, Scanum.io está revolucionando la forma en que las empresas manejan su información.

¡Visita Scanum.io hoy mismo y lleva tu análisis de datos al siguiente nivel!