Implementación de control de tráfico y limitación de peticiones en APIs PHP
Un escenario clásico donde esto resulta crítico es en arquitecturas basadas en PHP-FPM. Cada proceso worker disponible tiene un límite máximo, y cuando las peticiones concurrentes superan ese número, el pool de procesos se satura. Las solicitudes adicionales quedan encoladas y eventualmente Nginx devuelve un error 502 Bad Gateway.
Limitación en ...
Publicado el 7-4 05:01
Fundamentos de Serialización en PHP y Análisis de Vulnerabilidades de Deserialización
Preparación del Entorno de Laboratorio
Para analizar estos conceptos de forma práctica y segura, es aconsejable aislar el entorno mediante contenedores. A continuación, se detalla el despliegue utilizando Docker:
docker pull mcc0624/ser:1.8
docker run -d -p 8888:80 mcc0624/ser:1.8
Paradigmas de Programación: Estructurado vs. Orientado a Objeto ...
Publicado el 7-4 00:28
Solucionario de challenges web - Competicion 2023
easy-API
Este challenge proporciona el codigo fuente. Analicemos los archivos.
main.py:
from fastapi import FastAPI, Depends
from fastapi.exceptions import HTTPException
from fastapi.responses import FileResponse
from fastapi.security import OAuth2PasswordRequestForm
from os import path
from .auth import User, Group, Token, verify_user, get_use ...
Publicado el 6-30 20:59
Motor de Plantillas Smarty para PHP: Implementación y Optimización
Fundamentos de Smarty
Naturaleza de Smarty
Smarty es un motor de plantillas para PHP que separa la lógica de negocio de la presentación visual. Utiliza etiquetas especiales dentro de archivos HTML para insertar contenido dinámico, permitiendo que diseñadores modifiquen interfaces sin alterar código PHP.
Ventajas Clave
Separación clara entre ca ...
Publicado el 6-30 06:38
Instalación de PHP desde Código Fuente e Integración con Apache HTTP Server
Este artículo detalla el procedimiento para compilar e instalar PHP desde el código fuente y su posterior configuración para funcionar con Apache HTTP Server en un entorno Linux. Se cubren los pasos desde la preparación del sistema hasta la verificación final de la instalación.
1. Preparcaión del Entorno del Sistema
Antes de compilar PHP, es fu ...
Publicado el 6-28 01:27
Ataques de Inyección en Bases de Datos NoSQL
Introducción a la inyección NoSQL
Las bases de datos NoSQL han ganado popularidad por su escalabilidad y flexibilidad. Sin embargo, su sintaxis de consulta particular introduce riesgos de seguridad distintos a la inyección SQL tradicional. Este artículo describe vectores comunes de ataque y sus implicaciones.
Inyección de Arreglos en PHP
En un ...
Publicado el 6-27 00:54
Guía Práctica de Configuración y Uso de Redis
Instalación y configuración de instancia única
Para obtener el código fuente, utiliza curl en lugar de wget para descargar y extraer el paquete:
curl -O https://download.redis.io/releases/redis-7.0.5.tar.gz
tar -xvzf redis-7.0.5.tar.gz
cd redis-7.0.5
make
sudo make install PREFIX=/usr/local/redis
Configura el servicio para que se ejecute en se ...
Publicado el 6-26 17:56
Creación de Tareas Programadas en Yii2 (Comandos de Consola)
Yii2 dispone de una funcionalidad robusta para ejecutar tareas programadas mediante comandos de consola. En el directorio console dentro de la estructura del proyecto, podemos crear controladores específicos para manejar estas tareas automatizadas.
A continuación, se presenta un ejemplo de controlador para tareas programadas:
<?php
namespace ...
Publicado el 6-26 00:40
Integración de alianzas publicitarias en un sistema SaaS mediante desarrollo personalizado
Tablas de datos que requieren modificaciones
w_ad_app // Almacena datos agregados de la alianza publicitaria
w_ad_app_day_log // Registra estadísticas diarias por aplciación en la alianza
w_ad_member_app_day_log // Captura datos diarios de la alianza por usuario
w_ad_bill_[identificador_alianza] // Recopila facturas de la alianza específica
A ...
Publicado el 6-25 02:41
Ingeniería de Cadenas POP en Deserialización PHP: Casos Prácticos
En el análisis de vulnerabilidades de deserialización en PHP, la función unserialize() actúa únicamente como el punto de entrada. La verdadera complejidad y el éxito de la explotación residen en la construcción de la cadena POP (Property Oriented Programming). En escenarios reales o competencias de seguridad, el mayor desafío no es comprender l ...
Publicado el 6-24 16:23