══════════════════════════════════════════════════════════════════════
NETGO NOC — REPORTE DE AUDITORÍA DE SEGURIDAD
Generado: 14/03/2026 21:58:50
Directorio: /home/noc/public_html
══════════════════════════════════════════════════════════════════════
── VERIFICACIONES DE CONFIGURACIÓN ─────────────────────────────────
.htaccess existe: ❌ NO — Se recomienda crearlo
expose_php: ⚠️ (Ocultar versión de PHP — actual: 1)
display_errors: ⚠️ (No mostrar errores en pantalla — actual: vacío)
allow_url_include: ⚠️ (Bloquear include remoto (RFI) — actual: vacío)
allow_url_fopen: ⚠️ (Bloquear apertura de URLs remotas — actual: 1)
session.cookie_httponly: ⚠️ (Cookies de sesión con HttpOnly — actual: vacío)
── ARCHIVOS CON VULNERABILIDADES CRÍTICAS ───────────────────────────
🔴 Realizar_NOTAA.php
L144 ❌ Ejecución de comandos del sistema con variable de usuario
Código: $response = curl_exec($ch);
🔴 Solicitar_Codigo_Tecnico.php
L140 ❌ Ejecución de comandos del sistema con variable de usuario
Código: $response = curl_exec($ch);
🔴 api/aceptar_falla.php
L52 ❌ SQL DML con concatenación directa de variable
Código: $sql_update = "UPDATE FALLAS SET ESTADO='EN_PROCESO', ESTADO_ANTERIOR='PENDIENTE' WHERE ID=" . $falla_id;
🔴 api/check_notificaciones.php
L58 ❌ SQL DML con concatenación directa de variable
Código: $sql_update = "UPDATE NOTIFICACIONES_FALLAS SET LEIDA=1 WHERE ID IN (" . $ids_str . ")";
🔴 audit_security.php
L20 ❌ SQL con variable PHP concatenada directo en oci_parse()
Código: 'ejemplo' => 'oci_parse($conn, "SELECT * WHERE id = $id")',
L35 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: 'ejemplo' => 'eval($_POST["cmd"])',
L40 ❌ Ejecución de comandos del sistema con variable de usuario
Código: 'ejemplo' => 'system($_GET["cmd"])',
L45 ❌ LFI/RFI: include/require con variable de usuario
Código: 'ejemplo' => 'include($_GET["pagina"])',
L50 ❌ Open Redirect: redirección con variable de usuario sin validar
Código: 'ejemplo' => 'header("Location: " . $_GET["url"])',
L55 ❌ SQL DML con concatenación directa de variable
Código: 'ejemplo' => '$sql = "DELETE FROM t WHERE id = " . $id',
🔴 dashboard_tecnico.php
L44 ❌ SQL con variable PHP concatenada directo en oci_parse()
Código: $stmt = oci_parse($conn, "UPDATE solicitudes SET visto_respuesta = 1 WHERE id IN ($ids)");
🔴 db_abstract.php
L159 ❌ SQL con variable PHP concatenada directo en oci_parse()
Código: $stmt = oci_parse($conn, "SELECT $sequence_name.CURRVAL FROM DUAL");
🔴 vendor/brick/math/src/BigInteger.php
L1002 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: assert($bin !== false);
🔴 vendor/brick/math/src/BigNumber.php
L67 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: assert($value instanceof static);
L105 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: assert($numerator !== null);
L106 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: assert($denominator !== null);
🔴 vendor/brick/math/src/Internal/Calculator/NativeCalculator.php
L397 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: assert($carry === 0);
🔴 vendor/dompdf/dompdf/src/Adapter/CPDF.php
L907 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: eval($callback);
🔴 vendor/dompdf/dompdf/src/Adapter/PDFLib.php
L1326 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: eval($callback);
🔴 vendor/dompdf/dompdf/src/Helpers.php
L1093 ❌ Ejecución de comandos del sistema con variable de usuario
Código: $data = curl_exec($curl);
🔴 vendor/dompdf/dompdf/src/PhpEvaluator.php
L52 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: eval($code);
🔴 vendor/guzzlehttp/guzzle/src/Handler/CurlHandler.php
L44 ❌ Ejecución de comandos del sistema con variable de usuario
Código: \curl_exec($easy->handle);
🔴 vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php
L175 ❌ Ejecución de comandos del sistema con variable de usuario
Código: while (\curl_multi_exec($this->_mh, $this->active) === \CURLM_CALL_MULTI_PERFORM) {
L188 ❌ Ejecución de comandos del sistema con variable de usuario
Código: if (\curl_multi_exec($this->_mh, $this->active) === \CURLM_CALL_MULTI_PERFORM) {
🔴 vendor/minishlink/web-push/src/WebPush.php
L245 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: \assert($notification instanceof Notification);
🔴 vendor/phpmailer/phpmailer/src/PHPMailer.php
L876 ❌ Ejecución de comandos del sistema con variable de usuario
Código: private function mailPassthru($to, $subject, $body, $header, $params)
L1829 ❌ Ejecución de comandos del sistema con variable de usuario
Código: $mail = @popen($sendmail, 'w');
L1855 ❌ Ejecución de comandos del sistema con variable de usuario
Código: $mail = @popen($sendmail, 'w');
L2012 ❌ Ejecución de comandos del sistema con variable de usuario
Código: $result = $this->mailPassthru($toAddr, $this->Subject, $body, $header, $params);
L2026 ❌ Ejecución de comandos del sistema con variable de usuario
Código: $result = $this->mailPassthru($to, $this->Subject, $body, $header, $params);
🔴 vendor/phpoffice/phpword/src/PhpWord/Shared/PCLZip/pclzip.lib.php
L2547 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: // eval('$v_result = '.$p_options[PCLZIP_CB_PRE_ADD].'(PCLZIP_CB_PRE_ADD, $v_local_header);');
L2694 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: // eval('$v_result = '.$p_options[PCLZIP_CB_POST_ADD].'(PCLZIP_CB_POST_ADD, $v_local_header);');
L3531 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: // eval('$v_result = '.$p_options[PCLZIP_CB_PRE_EXTRACT].'(PCLZIP_CB_PRE_EXTRACT, $v_local_header);');
L3748 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: // eval('$v_result = '.$p_options[PCLZIP_CB_POST_EXTRACT].'(PCLZIP_CB_POST_EXTRACT, $v_local_header);');
L3868 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: // eval('$v_result = '.$p_options[PCLZIP_CB_PRE_EXTRACT].'(PCLZIP_CB_PRE_EXTRACT, $v_local_header);');
L3934 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: // eval('$v_result = '.$p_options[PCLZIP_CB_POST_EXTRACT].'(PCLZIP_CB_POST_EXTRACT, $v_local_header);');
L3979 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: // eval('$v_result = '.$p_options[PCLZIP_CB_PRE_EXTRACT].'(PCLZIP_CB_PRE_EXTRACT, $v_local_header);');
L4046 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: // eval('$v_result = '.$p_options[PCLZIP_CB_POST_EXTRACT].'(PCLZIP_CB_POST_EXTRACT, $v_local_header);');
🔴 vendor/web-token/jwt-library/KeyManagement/KeyConverter/KeyConverter.php
L387 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: assert($key instanceof RSASSAPSSPrivateKey);
🔴 vendor/web-token/jwt-library/KeyManagement/UrlKeySetFactory.php
L62 ❌ Ejecución de código arbitrario (eval/assert/preg_replace /e)
Código: assert($this->client instanceof HttpClientInterface);
── ARCHIVOS CON ADVERTENCIAS MEDIAS ─────────────────────────────────
🟡 Actualizar_estado.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Agreg_Despacho_Rural.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Agregar_Sitios.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Agregar_Tecnico.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Cambio_Informacion.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Coordenadas_Noc.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Cuadrillas.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Detalles_Cambio_Informacion.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Editar_Despacho_Rural.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Enviar_Cambio_Informacion.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Enviar_Reporte_Accidente.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Enviar_Solicitud_Plataforma.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Generar_Despacho_Rural.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Generar_Horario.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Manuales_procesos.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
L32 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: isset($_FILES['archivo']) &&
L38 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: $archivo = $_FILES['archivo'];
🟡 Mejoras.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Plataformas_Externas.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Quejas.php
L4 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_AU.php
L7 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_Codigo_Tecnico.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_Custodia.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_Custodiaprotec.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_NOTAESPECIAL.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_RDA.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_REQ.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_SDA.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_SITE.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_Solicitud_ADMI.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_Solicitud_BreadLab.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_Solicitud_Calidad.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_Solicitud_IT.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_Solicitud_Maple.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_Solicitud_O&MT1.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_Solicitud_O&MT2.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_Solicitud_OT.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_Solicitud_Plataforma.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_Solicitud_Proyectos.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_Solicitud_RF.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_Solicitud_RRHH.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Realizar_validacion.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Reportes_Netgo.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Responder_Solicitud_Plataforma.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
L39 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if (isset($_FILES['archivo_respuesta']) && $_FILES['archivo_respuesta']['error'] === UPLOAD_ERR_OK) {
L40 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: $nombre_archivo = basename($_FILES['archivo_respuesta']['name']);
L44 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if (move_uploaded_file($_FILES['archivo_respuesta']['tmp_name'], $ruta_destino)) {
🟡 Responder_solicitud_cambio.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Solicitar_Programacion_MP.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
L90 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['tipo'], $_FILES['archivo'])) {
L94 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: $ext = strtolower(pathinfo($_FILES['archivo']['name'], PATHINFO_EXTENSION));
L99 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: } elseif ($_FILES['archivo']['error'] !== UPLOAD_ERR_OK) {
L100 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: $mensaje_error = "❌ Error al subir el archivo. Código: " . $_FILES['archivo']['error'];
L104 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: $nombre_orig = $_FILES['archivo']['name'];
L109 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if (move_uploaded_file($_FILES['archivo']['tmp_name'], $destino)) {
🟡 Solicitud_Acceso.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Solicitudes_Pendientes.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Solicitudes_RealizadasNoc.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 SubirReportes_Netgo.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
L23 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_FILES['archivo'])) {
L25 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: $archivo = $_FILES['archivo'];
🟡 Subir_programacion_MP.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
L62 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: } elseif (empty($_FILES['archivo_excel']['name']) || $_FILES['archivo_excel']['error'] !== UPLOAD_ERR_OK) {
L65 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: $xl = $_FILES['archivo_excel'];
L82 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if (!empty($_FILES['archivos_word']['name'][0])) {
L83 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: foreach ($_FILES['archivos_word']['name'] as $i => $wname) {
L84 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if ($_FILES['archivos_word']['error'][$i] !== UPLOAD_ERR_OK) continue;
L90 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if (move_uploaded_file($_FILES['archivos_word']['tmp_name'][$i], $wruta)) {
🟡 Subir_reporte_accidente.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
L19 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if (isset($_FILES["archivo"]) && $_FILES["archivo"]["error"] === 0) {
L20 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: $archivo_tmp = $_FILES["archivo"]["tmp_name"];
L21 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: $archivo_nombre = basename($_FILES["archivo"]["name"]);
🟡 Usuarios_contraseñas.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Validar_Personal.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
L92 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if (isset($_FILES['imagenes']['name']) && is_array($_FILES['imagenes']['name'])) {
L93 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: $total = min(count($_FILES['imagenes']['name']), 20);
L95 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if ($_FILES['imagenes']['error'][$i] !== UPLOAD_ERR_OK) continue;
L96 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if ($_FILES['imagenes']['size'][$i] === 0) continue;
L97 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: $nombre_original = $_FILES['imagenes']['name'][$i];
L101 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if (move_uploaded_file($_FILES['imagenes']['tmp_name'][$i], $destino)) {
L111 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if (isset($_FILES['pdfs']['name']) && is_array($_FILES['pdfs']['name'])) {
L112 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: $total = min(count($_FILES['pdfs']['name']), 5);
L114 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if ($_FILES['pdfs']['error'][$i] !== UPLOAD_ERR_OK) continue;
L115 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if ($_FILES['pdfs']['size'][$i] === 0) continue;
L116 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: $nombre_original = $_FILES['pdfs']['name'][$i];
L120 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if (move_uploaded_file($_FILES['pdfs']['tmp_name'][$i], $destino)) {
🟡 Ver_Despachos_Rural.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Ver_Reporte_Accidente.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 Ver_solicitudes_u.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 accesos_mes.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 accidentes_reporte.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 acciones_tecnicos.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 agregar_vehiculos.php
L4 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/asignar_falla.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/check_nuevos_avances.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L6 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/debug_imagenes.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/enviar_avance_completo.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L6 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
L79 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: if (!empty($_FILES['evidencias'])) {
L88 ⚠️ Carga de archivos — verificar validación de extensión y tipo MIME
Código: $files = $_FILES['evidencias'];
🟡 api/enviar_avance_noc.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L6 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/enviar_avance_rapido.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/enviar_avance_tecnico.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/enviar_rda.php
L7 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/exportar_historial.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/exportar_historial_excel.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/exportar_historial_pdf.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/generar_pdf_avances.php
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/generar_plantilla_whatsapp.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/get_asignaciones_tecnico.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/get_avances_falla.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L6 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/get_avances_noc.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/get_cuadrillas.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/get_falla_by_id.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/get_falla_detalles.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/get_fallas.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/get_fallas_stats.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/get_fallos_resueltos_hoy.php
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/get_history.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/get_ruta_cuadrilla.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/get_site_by_id.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/get_sites.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/get_sites_tecnico.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/marcar_resuelta.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/reasignar_falla.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/rechazar_falla.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/search_sites.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/solicitar_avance.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 api/update_cuadrilla_location.php
L2 ⚠️ error_reporting(E_ALL) activo — no mostrar errores en producción
Código: error_reporting(E_ALL);
L5 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 au_llegada_salida.php
L7 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 boton_panico.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 boton_panico_tecnicos.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 buscar_personal_vw.php
L8 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 buscar_rir.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 buscar_sitenoc.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 buscar_sitios.php
L19 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 buscar_sitios_coubicados.php
L26 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 buscar_tecnicos.php
L14 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 buscar_ticket_bodega.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 buscar_usuarios_tecnicos.php
L9 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 buscar_vehiculos.php
L8 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 buscar_vehiculos_solicitudes.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 busqueda_ajax.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 busqueda_realizadas_ajax.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 cambiar_estado_codigo.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 central_control.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 check_estado_panico_tecnicos.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 check_notifications.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 check_notifications_coordinador.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 check_nuevas_solicitudes.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 check_nuevos_tickets_guardia.php
L6 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 configurar_biometria.php
L7 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 consolidado_tecnicos.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 crear_horario_noc.php
L2 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 crear_solicitud_personalizada.php
L3 ⚠️ INFO: Usa sesiones — verificar session_regenerate_id() tras login
Código: session_start();
🟡 crear_usuario.php
L11 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código: // ── Helper CSRF ────────────────────────────────
L12 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código: function csrf_token(): string {
L13 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código: if (empty($_SESSION['csrf_token'])) {
L14 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código: $_SESSION['csrf_token'] = bin2hex(random_bytes(32));
L16 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código: return $_SESSION['csrf_token'];
L18 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código: function csrf_check(): void {
L19 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código: $token = $_POST['csrf_token'] ?? $_GET['csrf_token'] ?? '';
L20 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código: if (!hash_equals($_SESSION['csrf_token'] ?? '', $token)) {
L88 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código: csrf_check();
L149 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código: if (isset($_GET['eliminar']) && isset($_GET['csrf_token'])) {
L150 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código: csrf_check();
L176 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código: csrf_check();
L449 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código:
L450 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código:
L575 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código: $csrfToken = csrf_token();
L600 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código:
L601 ⚠️ INFO: Archivo menciona CSRF (verificar que esté implementado)
Código: