![]() |
Comandos Linux |
Fuente: Sysxplore
Las marquesinas son elementos web que presentan texto en movimiento horizontal o vertical a lo largo de la pantalla.
En términos de funcionamiento, las marquesinas son implementadas mediante código HTML y CSS. Pueden ser creadas manualmente o utilizando herramientas en línea que generan el código necesario. Es esencial recordar que las marquesinas pueden afectar la accesibilidad y la usabilidad del sitio, por lo que su uso debe ser cuidadosamente considerado.
Selecciona el texto: Decide qué información deseas mostrar en la marquesina. Puede ser un mensaje de bienvenida, anuncios destacados o cualquier contenido que desees resaltar.
Genera el código: Utiliza herramientas en línea para generar el código HTML y CSS necesario para crear la marquesina. Asegúrate de ajustar las opciones según tus preferencias, como la velocidad de desplazamiento y el estilo del texto.
Accede al diseño del blog en Blogger: Inicia sesión en tu cuenta de Blogger y ve al panel de control. Selecciona la opción "Diseño" en el menú lateral.
Agregar un gadget HTML/Javascript: En la sección donde deseas que aparezca la marquesina, haz clic en "Agregar gadget" y elige la opción "HTML/Javascript".
Pega el código generado: Copia y pega el código HTML y CSS que generaste en el paso 2 en el campo correspondiente del gadget HTML/Javascript.
Guarda y revisa tu blog: Guarda los cambios y revisa tu blog para asegurarte de que la marquesina se muestra correctamente. Ajusta el código según sea necesario.
A continuación, te presento una lista de todas las posibles combinaciones de atributos que puedes utilizar con la etiqueta <marquee> en HTML.
Dirección de Desplazamiento:
direction="left": Desplazamiento de izquierda a derecha.
direction="right": Desplazamiento de derecha a izquierda.
direction="up": Desplazamiento de arriba a abajo.
direction="down": Desplazamiento de abajo a arriba.
Comportamiento de Desplazamiento:
behavior="scroll": Desplazamiento continuo.
behavior="slide": Desplazamiento que se detiene al llegar al final.
Número de Veces que se Repite:
loop="n": Número de veces que la marquesina se repetirá. loop="infinite" para un bucle infinito.
Velocidad de Desplazamiento:
scrollamount="n": Velocidad de desplazamiento, donde "n" es un número. Cuanto mayor sea el número, más rápido será el desplazamiento.
Distancia entre Repeticiones:
scrolldelay="n": Tiempo en milisegundos entre repeticiones.
Comportamiento al Pasar el Ratón:
onmouseover="this.stop()": La marquesina se detiene cuando el ratón está sobre ella.
onmouseout="this.start()": La marquesina se reinicia cuando el ratón sale de ella.
Comportamiento Alternante:
behavior="alternate": La marquesina alterna entre la dirección especificada y su opuesta.
Estilo del Texto:
width="n": Ancho de la marquesina en píxeles o porcentaje.
height="n": Altura de la marquesina en píxeles.
bgcolor="color": Color de fondo de la marquesina.
color="color": Color del texto de la marquesina.
Contenido HTML dentro de la Marquesina:
Puedes incluir texto, imágenes u otros elementos HTML dentro de la marquesina.
A continuación, un ejemplo combinando varios de estos atributos:
<marquee behavior="scroll" direction="left" loop="infinite" scrollamount="5" scrolldelay="100" onmouseover="this.stop()" onmouseout="this.start()" width="80%">¡Bienvenidos a mi Blog!</marquee>
Existen varias formas. Dejo aquí dos formas de hacerlo.
Actualizaciones y parches: Mantén Docker actualizado a la última versión para corregir posibles vulnerabilidades.
Usa imágenes oficiales: Siempre que sea posible, utiliza imágenes oficiales de Docker Hub o de fuentes confiables.
Revisa regularmente las imágenes: Usa herramientas como Trivy, Clair o Anchore para escanear vulnerabilidades en tus imágenes.
Minimiza el tamaño de la imagen: Usa imágenes base minimalistas como alpine.
Limita los privilegios: Nunca ejecutes contenedores en modo --privileged a menos que sea absolutamente necesario. Ajusta las capacidades del contenedor con --cap-add y --cap-drop.
Control de usuarios: Ejecuta procesos dentro de contenedores como usuario no root siempre que sea posible.
Configuración de red segura: Usa redes Docker personalizadas en lugar de la red predeterminada. No expongas innecesariamente puertos al host. Usa -p con precaución.
Almacenamiento seguro: Evita montar directorios sensibles del host en contenedores.
Logging y Monitorización: Activa la monitorización y registro de actividad. Considera herramientas como ELK stack o Prometheus.
Limita recursos: Usa opciones como --memory, --cpu-shares para limitar los recursos que un contenedor puede usar.
Firma de imágenes: Utiliza Docker Content Trust para firmar y verificar la integridad de las imágenes.
Runtime Protegido: Usa herramientas como Falco para monitorear actividad anómala en tiempo de ejecución.
Limita el acceso al demonio Docker: Asegúrate de que solo los usuarios que realmente lo necesiten tengan acceso al socket de Docker.
Deshabilita inter-container communication (ICC): Deshabilita ICC si no necesitas que los contenedores se comuniquen entre sí en la misma red.
Controla la versión de tus imágenes: No uses la etiqueta latest. Específicas versiones para tener un control más estricto y evitar sorpresas.
Auditorías: Considera hacer auditorías regulares a tus contenedores y configuraciones usando herramientas como Docker Bench for Security.
![]() |
Logo |
Fuente: Perito_inf
Gracias a la Inteligencia Artificial existe una pagina donde permite a los programadores traducir código entre diferentes lenguajes, lo que nos permite comprender mejor la sintaxis de cada uno de ellos.
![]() |
Interfaz |
La pagina es: https://ide.onelang.io/
Recopilación de información:
Nmap, Shodan, Maltego, TheHavester, Recon-NG, Amass, Censys, OSINT Framework, Gobuster
Explotación:
Burp Suite, Metasploit Framework, SQL Map, ZAP, ExploitDB, Core Impact, Cobalt Strike
Descifrando contraseñas:
John The Ripper, Hydra, Hashcat, OPHCrack, Medusa, THC Hydra, Cain & Abel
Escaneo de vulnerabilidades:
OpenVAS, Nessus, AppScan, LYNIS, Retina, Nexpose
Ingeniería de software:
GoPhish, HiddenEye, SocialFish, EvilURL, Evilginx
Forense:
SluethKit, Autopsy, Volatility, Guymager, Foremost, Binwalk, Wireshark
Hackeo inalámbrico:
Aircrack-NG, Wifite, Kismet, TCPDump, Airsnort, Netstumbler, Reaver
Evaluación de aplicaciones web:
OWASP ZAP, Burp Suite, Nikto, ZAP, WPScan, Gobuster, App Spider
![]() |
Logo Docker |
No basta con borrar el historial. Hay que entrar en el siguiente enlace:
https://myactivity.google.com/myactivity
Y borrar desde siempre.
El modelo OSI, que significa Open Systems Interconnection (Interconexión de Sistemas Abiertos), es un marco conceptual que proporciona una estructura para la implementación de protocolos de comunicación en una red de computadoras. Fue desarrollado por la Organización Internacional de Normalización (ISO) con el objetivo de estandarizar y organizar los diferentes aspectos de las comunicaciones de red.
![]() |
Modelo OSI |
El modelo OSI divide las funciones de comunicación en siete capas, cada una de las cuales se encarga de tareas específicas. Estas capas, de la capa más baja a la más alta, son:
Capa física: Se ocupa de la transmisión y recepción de bits a través del medio físico de la red, como cables y conectores.
Capa de enlace de datos: Establece y mantiene la comunicación entre dos dispositivos en la misma red. Se encarga de la detección y corrección de errores, así como del control de flujo.
Capa de red: Se encarga de enrutar los datos a través de la red, determinando la mejor ruta para la transmisión de paquetes desde el origen hasta el destino.
Capa de transporte: Proporciona servicios de transporte confiables, como la segmentación y reensamblaje de datos, y el control de flujo.
Capa de sesión: Establece, mantiene y finaliza sesiones de comunicación entre aplicaciones.
Capa de presentación: Se encarga de la traducción, compresión y cifrado de datos para garantizar la interoperabilidad entre sistemas con diferentes formatos y representaciones de datos.
Capa de aplicación: Proporciona servicios de red a las aplicaciones de usuario, permitiendo la interacción directa entre el usuario y la red.
El modelo OSI es una guía conceptual que ayuda a entender cómo los diferentes protocolos de red trabajan juntos para facilitar la comunicación entre dispositivos en una red de computadoras. Aunque no todos los aspectos del modelo OSI son implementados en todas las redes, el modelo proporciona un marco útil para comprender y describir los procesos de comunicación en una red.
![]() |
Consulta SQL |
SELECT: Especifica las columnas que se desean recuperar de la base de datos. En este caso, column_a y column_b son las columnas seleccionadas para la salida.
FROM: Indica la tabla de la que se van a seleccionar los datos. Aquí, t1 es la tabla de origen.
JOIN: Se utiliza para combinar filas de dos o más tablas, basadas en una columna relacionada entre ellas. En el ejemplo, t2 es la tabla que se une con t1.
ON: Define la condición de unión entre las dos tablas. La consulta muestra que t1.column_a debe ser igual a t2.column_a, lo que significa que la unión se hace en base a la coincidencia de valores en column_a de ambas tablas.
WHERE: Es una cláusula que se utiliza para filtrar registros que cumplen una condición específica. constraint_expression sería una expresión que define esta condición.
GROUP BY: Agrupa las filas que tienen los mismos valores en la columna especificada, lo que permite realizar operaciones de agregación como contar, sumar, promediar, etc.
HAVING: Es similar a WHERE, pero se aplica a grupos de filas creados por GROUP BY. constraint_expression indica la condición que deben cumplir los grupos.
ORDER BY: Organiza los resultados según el valor de una o más columnas, en orden ascendente (ASC) o descendente (DESC).
LIMIT: Limita el número de registros que la consulta retorna, que es útil cuando solo se necesita una cierta cantidad de filas. count indica el número máximo de registros a retornar.
Como ves, la consulta se escribe de una forma pero el orden de ejecución es otro.
Primero se usa FROM y JOIN para saber de dónde extrae la información.
Luego con ON y WHERE se usan expresiones para filtrar los resultados.
Después de agrupar con GROUP BY y filtrar con HAVING, entonces es que seleccionamos los campos.
Finalmente los ordenamos y limitamos los resultados.
Fuente: midudev
En este enlace: Herramientas-OSINT-ofensivas
Este repositorio consta de herramientas/enlaces que un experto puede utilizar durante Pentest/RedTeam.
![]() |
Red Team |
Fuente: HackingTeam777
DLP (Prevención de Pérdida de Datos) y IRM (Administración de Derechos de Información) son dos enfoques diferentes para proteger la información sensible dentro de una organización.
DLP (Prevención de Pérdida de Datos): Se centra en evitar que la información confidencial salga de la organización sin autorización. Utiliza tecnologías como la monitorización de red, el escaneo de contenido y políticas de seguridad para identificar y controlar el movimiento de datos sensibles. Por ejemplo, puede bloquear la transferencia de archivos confidenciales a dispositivos externos o enviar alertas cuando se detecta actividad sospechosa.
IRM (Administración de Derechos de Información): Se enfoca en controlar el acceso y los derechos sobre los datos sensibles una vez que han sido compartidos o distribuidos, incluso fuera del perímetro de la red de la organización. IRM utiliza técnicas como el cifrado y la gestión de derechos digitales para garantizar que solo las personas autorizadas puedan acceder, ver, editar o compartir documentos confidenciales. Por ejemplo, un documento protegido con IRM puede requerir una autenticación antes de poder abrirse, y puede limitar qué acciones pueden realizar los usuarios una vez que lo abren.
En resumen, mientras que DLP se enfoca en prevenir la fuga de datos, IRM se enfoca en controlar los derechos de acceso y uso sobre los datos sensibles, incluso después de que hayan sido compartidos. Ambos enfoques son importantes para una estrategia integral de seguridad de la información.
Software de DLP gratuito:
OpenDLP: OpenDLP es una herramienta de código abierto que puede utilizarse para detectar la presencia de datos confidenciales en sistemas Windows y Unix. Utiliza expresiones regulares para buscar patrones de datos sensibles en archivos y sistemas de archivos compartidos.
PacketFence: PacketFence es una solución de código abierto para la protección de redes que incluye características de DLP. Puede detectar y bloquear dispositivos no autorizados en la red, así como prevenir la transferencia de datos sensibles a través de la red.
Software de IRM gratuito:
Microsoft Azure Information Protection - Plan 1: Microsoft ofrece una versión gratuita de Azure Information Protection, que incluye capacidades básicas de clasificación y protección de documentos. Aunque algunas características avanzadas pueden requerir una suscripción de pago, esta versión gratuita puede ser útil para implementaciones básicas de IRM.
VeraCrypt: Aunque no está específicamente diseñado como una solución de IRM, VeraCrypt es un software de cifrado de disco gratuito y de código abierto que puede utilizarse para proteger archivos y dispositivos de almacenamiento con cifrado fuerte. Puede ser útil para proteger datos confidenciales almacenados en dispositivos físicos.
![]() |
DLP VS IRM |
Kubernetes es una plataforma portable y extensible de código abierto para administrar cargas de trabajo y servicios. Facilita la automatización y la configuración declarativa.
Kubernetes ejecuta verificaciones de estado de manera continua en los servicios, reinicia los contenedores con errores o que se detuvieron y solo pone los servicios a disposición de los usuarios una vez confirma que se están ejecutando.
La innumerable elección de herramientas habla de la inmensidad y el alcance de este ecosistema dinámico, que satisface diversas necesidades en el mundo de la contenedorización.
Kubernetes tiene varias características. Puedes pensar en Kubernetes como:
y mucho más.
Kubernetes ofrece un entorno de administración centrado en contenedores. Kubernetes orquesta la infraestructura de cómputo, redes y almacenamiento para que las cargas de trabajo de los usuarios no tengan que hacerlo. Esto ofrece la simplicidad de las Plataformas como Servicio (PaaS) con la flexibilidad de la Infraestructura como Servicio (IaaS) y permite la portabilidad entre proveedores de infraestructura.
![]() |
Kubernetes |
Estupenda Web para aprender a programar jugando con juegos retro.
SIGNIFICADO:
Una copia de seguridad o respaldo implica la duplicación de los datos almacenados en un dispositivo o sistema. Su propósito es garantizar la disponibilidad de dichos datos en caso de eliminación accidental, pérdida o robo malintencionado.
Es recomendable seguir la regla "3-2-1", que indica tener al menos tres copias de seguridad de los datos: almacenadas en dos entornos diferentes y una de ellas fuera de la infraestructura tecnológica de la organización.
TIPOS:
Respaldo completo (Full Backup):
Este tipo de respaldo crea una réplica exacta de los datos originales, incluyendo todas las modificaciones realizadas a lo largo del tiempo. Requiere una gran capacidad de almacenamiento y recursos computacionales considerables.
Respaldo incremental:
Esta técnica replica solo los datos modificados desde el respaldo anterior. Inicia con un respaldo completo y luego incluye solo los cambios. Requiere menos capacidad de almacenamiento, pero el proceso de recuperación es más lento.
Respaldo diferencial:
Se replica la información modificada desde el último respaldo completo, sin tener en cuenta respaldos incrementales o diferenciales anteriores. La recuperación de datos es eficiente y rápida, aunque requiere más almacenamiento y cómputo que el respaldo incremental.
Respaldo incremental inverso:
Crea una réplica de los datos que han cambiado desde el último respaldo completo, sobrescribiendo el respaldo original. Eficiente en almacenamiento, pero no conserva datos históricos y no permite la recuperación de versiones anteriores de los datos.
Otros tipos de respaldos:
Existen métodos más avanzados, como el respaldo continuo (backup en tiempo real), que realiza copias mientras los datos se modifican, y el respaldo selectivo, que replica datos específicos seleccionados por el usuario. Estas técnicas suelen usarse en combinación con otros tipos de respaldos.
![]() |
Backup |
Cuando navegamos por la vasta red de Internet, rara vez pensamos en los complicados procesos que se llevan a cabo tras bambalinas. Una parte esencial de esta infraestructura invisible es el Sistema de Nombres de Dominio, más conocido como DNS. En este artículo, nos sumergiremos en el mundo del DNS para entender cómo funciona y por qué es fundamental para nuestra experiencia en línea.
![]() |
Jerarquia |
¿Qué es el DNS y por qué es Importante?
El DNS es el sistema que traduce los nombres de dominio legibles para los humanos, como www.ejemplo.com, en direcciones IP que las computadoras pueden entender. Las direcciones IP, formadas por números y puntos, son las que realmente guían el tráfico a través de Internet. Sin el DNS, tendríamos que recordar direcciones IP para acceder a nuestros sitios favoritos, una tarea poco práctica y propensa a errores.
La Estructura del DNS: Jerarquía de Nombres de Dominio
El DNS opera como una jerarquía organizada en niveles. Comienza con el dominio de nivel superior (TLD), como .com, .org o .net, seguido por el nombre de dominio específico y, opcionalmente, subdominios adicionales. Esta estructura en capas facilita la organización y gestión de los nombres de dominio en Internet.
El Proceso de Resolución DNS
Cuando ingresamos una dirección web en nuestro navegador, se desencadena el proceso de resolución DNS, que se lleva a cabo en varias etapas:
El Papel de la Caché DNS
Para mejorar la eficiencia y acelerar las consultas, se utiliza la caché DNS. Los resultados de consultas anteriores se almacenan temporalmente en los servidores DNS, reduciendo así el tiempo necesario para obtener información en futuras solicitudes.
DNS y Seguridad: Desafíos y Soluciones
El DNS también se enfrenta a desafíos de seguridad, como ataques de envenenamiento de caché y suplantación de identidad. Para abordar estos problemas, se implementan medidas como DNSSEC (DNS Security Extensions), que ayuda a garantizar la autenticidad e integridad de las respuestas DNS.
![]() |
DNS |
En conclusión, aunque el DNS trabaja en las sombras, su papel es crucial para la conectividad fluida en Internet. Entender cómo funciona este sistema nos proporciona una apreciación más profunda de la ingeniería detrás de nuestra experiencia en línea diaria. La próxima vez que ingreses una dirección web, recuerda que detrás de cada clic hay un proceso fascinante de resolución DNS que hace posible la magia de Internet.