Artículos
386 meneos
8063 clics

La web de auditoriasciudadanas.netlify.app es una estafa

Gracias a @livingstone84 por este artículo, he hecho una investigación en mis horas muertas y he encontrado muchas cosas graciosas.

Esta web, esta gestionada con una API en json y un front en React, los metodos son privados, pero usando la token de sesión y un poco de ingeniería inversa, he conseguido ver los metodos de los que dispone la api:

GET, POST, DELETE, PATCH para:

  • /votes
  • /proposals
  • /password_attempts
  • /wastes
  • /page_views
  • /audit_log
  • /rate_limits
  • /comments
  • /admin_users
  • /admin_sessions
  • /admin_actions
  • /scheduled_comments
  • /comment_votes
  • /subscribers
  • /sessions
  • /deletion_attempts
  • /proposal_deletions
  • /audit_logs

GET, POST para:

  • /rpc/validate_content
  • /rpc/insert_sample_proposals
  • /rpc/check_rate_limit
  • /rpc/set_admin_password
  • /rpc/log_password_attempt
  • /rpc/check_admin_credentials
  • /rpc/format_savings
  • /rpc/record_action
  • /rpc/generate_random_nickname
  • /rpc/generate_random_nickname_extra
  • /rpc/update_admin_last_login
  • /rpc/get_daily_visits
  • /rpc/validate_admin_session
  • /rpc/set_delete_password
  • /rpc/check_admin_password
  • /rpc/check_delete_permission
  • /rpc/create_admin_session

Muchos de estos endpoints, son accesibles con la token de sesión de un usuario sin auntentificar, hay unos cuantos métodos curiosos:

Listado de los usuarios admin (admin_users), te da su usuario y su password (cifrado)

Listado de comentarios (comments), este te da todos los comentarios, los he pasado a un CSV y viendo las fechas de creación, la estructura de los comentarios y los nombres de usuario, tienen pinta de ser generados por una IA.

Pero mis metodos favorios son (generate_random_nickname y generate_random_nickname_extra) genera nombres de usuario, con el mismo patrón que muchos de los usuarios de los que hacen los comentarios.

La seguridad de la web, brilla por su ausencia, seguramente, con algo de paciencia y ganas podría hacer un volcado de paracticamente todos los datos de la web.

Ya no sé, que es más comico, si el contenido, los comentarios generados por IA o todo el tema legal.

Si alguien quiere saber más o como he obtenido estos datos, que me pregunte, porque no hay absolutamente nada ilegal en como los he obtenido, lo que seguramente sea ilegal, es que estén tan expuestos.

217 169 0 K 55
217 169 0 K 55
153 meneos
3445 clics

Como he conseguido la info de auditoriasciudadanas

Voy a ampliar el artículo que hice de auditiríasciudadanas

Firefox ofrece herramientas avanzadas en su consola de desarrollo para inspeccionar y modificar llamadas a APIs. Lo curioso del asunto es que el token básico, ese que te dan como usuario anónimo, no tiene demasiadas restricciones a la hora de realizar ciertas llamadas. Esto deja claro que el sistema de permisos de la API es, cuanto menos, cuestionable.

Por ejemplo, esta es la llamada que permite acceder a la documentación Swagger:

curl 'xfztookxklscvnctqcog.supabase.co/rest/v1/' --compressed -H 'Accept: /' -H 'Accept-Language: es-ES,es;q=0.8,en-US;q=0.5,en;q=0.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Referer: auditoriasciudadanas.netlify.app/' -H 'accept-profile: public' -H 'apikey: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InhmenRvb2t4a2xzY3ZuY3RxY29nIiwicm9sZSI6ImFub24iLCJpYXQiOjE3Mzg4MzAwOTIsImV4cCI6MjA1NDQwNjA5Mn0.lLgof7_zr3l_y_6MOSD-hpslEg40zgfpwvs4bGHGdhQ' -H 'authorization: Bearer [TOKEN DE SESIÓN]' -H 'x-client-info: supabase-js-web/2.48.1' -H 'Origin: auditoriasciudadanas.netlify.app' -H 'Connection: keep-alive' -H 'Sec-Fetch-Dest: empty' -H 'Sec-Fetch-Mode: cors' -H 'Sec-Fetch-Site: cross-site' -H 'Priority: u=4' -H 'TE: trailers'

No he tenido que profundizar demasiado para encontrar cosas dignas de un stand-up comedy. La documentación está hecha con Swagger y se puede configurar mediante un archivo YML para limitar el acceso a ciertos endpoints (EP) según el token de usuario. En este caso, parece que alguien decidió ignorar esa funcionalidad.

Hallazgos curiosos:

Estos endpoints están en la parte pública y no deberían:

  • /rpc/insert_sample_proposals: Carga propuestas de ejemplo.
  • /rpc/set_admin_password: Cambia la contraseña del administrador (¿es en serio?).
  • /rpc/check_admin_credentials: Verifica credenciales de administrador.
  • /rpc/create_admin_session: Parece diseñado para permitir a usuarios normales escalar a administrador.
  • /admin_users: Lista usuarios administradores con contraseñas cifradas.
  • /rpc/generate_random_nickname y /rpc/generate_random_nickname_extra: Para generar apodos aleatorios. Sí, ternura infinita.

Swagger incluso te da instrucciones detalladas para hacer llamadas POST, describiendo los campos necesarios y mostrando ejemplos de respuesta. Por ejemplo, al pedir el endpoint admin_users, se obtiene algo como esto:

[{"id":"9c8feed4-9fe3-4685-8260-5706a8d2a86b","email":"[email protected]","password_hash":"$2a$06$yeB3HsA65hAUp0aeYwpdNeJPID1OLCBE7BUVoiaE0tzlraWOm.lhu","created_at":"2025-02-12T11:17:31.90657+00:00","last_login":"2025-02-12T11:22:45.55577+00:00"}]

Al menos no están almacenando contraseñas en texto plano... qué consuelo más barato.

Y para rematar, en el endpoint proposal_deletions se pueden consultar propuestas borradas. Por ejemplo:

{"action_type":"delete","deleted_proposal":"Ayudas por violencia de género","deleted_by":"Anónimo","deleted_at":"2025-02-06T20:51:44.106982+00:00}

Ejemplos de nicks aleatorios:

"Funcionario401Zaragoza".

"Contribuyente190Sevilla"

"Funcionario572Vigo"

"Positivo######Net"

Conclusión:

Esto parece una clase práctica de “Cómo no diseñar una API”. Entre los permisos descontrolados y la documentación pública indiscriminada, es un terreno fértil para los más curiosos... o los malintencionados.

90 63 0 K 47
90 63 0 K 47
93 meneos
2163 clics

Confirmado: nos van a meter la paz por el culo

Ya lo escribí hace un año y me jode tener razón. La cosa era matar a 200.000 personas más y fundir 200.000 millones más antes de llegar al mismo acuerdo al que podíamos haber llegado poco después de comenzar la guerra.

Pero no, hombre, había que levantarle un altar a Disney y seguir discutiendo todos los putos días quién era el invasor, quién era el culpable, y quién tenía que perder, porque los malos no pueden ganar nunca. De verdad que me parece increíble lo mucho que se defiende el laicismo y lo jodidamente aferrados que muchos siguen a esa mentalidad religiosa de que hay que premiar a los buenos y castigar a los malos, el cielo, el infierno, y el purgatorio de las sanciones.

Y es que los hechos son los que son, los mismos que hace doscientos mil muertos y doscientos mil millones. No hay una manera realista de conseguir que los rusos se retiren de los territorios que ocupan, ni hay una manera realista de conseguir que paguen la reconstrucción del país, ni tampoco de llevar a sus líderes ante al justicia internacional, máxime después de lo que ha pasado y sigue pesando en Gaza.

Y a lo mejor viene bien echarle un vistazo a otros hecho que no se mencionan tan a menudo pero también tienen su peso. ¿os dais cuenta de que uno de los efectos de la guerra de Ucrania es fomentar el acercamiento entre Rusia y China? ¿Cómo va a estar EEUU de acuerdo don eso, cuando China es su principal adversario? ¿Va a permitir que se forma esa alianza, o una tan dañina para ellos como la de los BRICS, sólo porque Ucrania no quiere ser rusa? Venga ya, hombre.

¿Os dais cuenta de que Irán fabrica buena parte de los drones y la munición rusa, y que mientras Rusia esté achuchada los iraníes pueden pedir casi cualquier cosa a cambio? ¿Para qué quiere Irán desarrollar un costosísimo programa nuclear cuando tiene un vecino y aliado al que le sobran bombas atómicas y puede facilitarle un par de docenas a cambio de su asistencia militar en la guerra de Ucrania? Irán ya es, seguramente, una potencia atómica, y todo por la mierda de la guerra de Ucrania.

¿Os dais cuenta de que los norcoreanos, estén de veras o no sobre terreno, ya han obtenido magníficos acuerdos a cambio de su apoyo y de convertirse en proveedores de munición de artillería? Y todo por esta estúpida guerra.

Estados Unidos quiere acabar con esa guerra cuanto antes para, cuanto antes, acabar con el acercamiento entre Rusia y China, y volver a aislar a Irán y Corea del Norte en la media de lo posible. Y va a hacer lo que sea necesario, siguiendo su propia escala de intereses, en la que Ucrania, la verdad, queda bastante abajo. Y para conseguirlo, tiene dos opciones: o derrotar a Rusia, lo que es francamente difícil, o derrotar a Ucrania, lo que ven claramente en su mano sin mucha dificultad. Así que van a optar por el segundo plan, derrotándonos de paso a los europeos, y dejándonos solos, sin asistencia americana y sin asistencia de la OTAN para que los europeos nos echemos la mano a la cartera para gastar en nuestra propia defensa, a ser posible, comprando carísimos juguetes bélicos americanos. Para ellos es un win-win de manual, y para nosotros es una reputísima mierda. Una, que, para colmo de males, no tenemos muchos modos de evitar.

Tenemos muchas opciones, es cierto, pero ninguna es realista con los mimbres actuales. Y trump lo sabe. Sin un profundo cambio de mentalidad, que no se consigue a corto plazo, nos queda llorar, patalear y llamar fascista a Trump, pero poco más.

La solución, quizás, sería aliarnos con Rusia, o con China, para que los americanos tuviesen algo que apuntar en la columna de pérdidas. ¿Pero alguien ve eso posible? Yo no, desde luego. Y como sólo se puede negociar con lo posible, pues nos quedan, como digo, la indignación, las pataletas y las lágrimas.

Poco más.

71 22 8 K 87
71 22 8 K 87
3 meneos
217 clics
MALEMÁTICAS CCLXVI: cuando no tienes ni puñetera idea de lo que escribes

MALEMÁTICAS CCLXVI: cuando no tienes ni puñetera idea de lo que escribes

Publica El Debate un artículo donde asegura que El Ejército suministra un millón de toneladas de agua y 33.500 litros de combustible a los peñones que reclama Marruecos. Se trata de la primera campaña del año del buque de la Armada "Mar Caribe" para trasladar suministros a los peñones de soberanía española en el norte de África. Hay que tener poca conciencia sobre las cantidades para pensar que en 9 visitas de un barco con un desplazamiento de 1.860 toneladas pueda haber llevada tal cantidad de agua: ¡más de un hectómetro cúbico de agua!. Para realizar tal transporte habría necesitado bastantes miles de viajes. La realidad es que no son toneladas de agua, son litros de agua. Se han equivocado en un factor de 1.000.

7 meneos
198 clics

Con los anuncios con sonido y vídeo menéame es insoportable

Si querían transformar menéame en una web insufrible en la que sea imposible leer los artículos lo han conseguido.

La experiencia de navegar entre banners y que de repente y cada dos por tres, te salte una canción, voz en off, o musiquita molestando, distrayendo y haciendo que no puedas ni entender lo que lees es el horror.

Si esto sigue tan mal, hasta siempre.

9 meneos
131 clics

No es una concesión, oye...

El secretario de Defensa estadounidense, Pete Hegseth, ha asegurado que renunciar a las fronteras que tenía Ucrania antes de la anexión de Crimea en 2014 no es una "concesión" al presidente ruso, Vladímir Putin, sino el "reconocimiento de las duras realidades del poder".

"Simplemente apuntar al realismo, como que las fronteras no volverán a ser las que todos les gustaría que fueran, previas a 2014, no es una concesión a Vladímir Putin. Es un reconocimiento de las duras realidades del poder sobre el terreno", declaró en una rueda de prensa tras la reunión de ministros de Defensa de la OTAN celebrada en Bruselas.

:wow:

2 meneos
47 clics

Libertad: semántica

Convivencia, voluntad colectiva y libertad… y sus bemoles

Haciendo un repaso al significado de la palabra libertad, la RAE la define como "la facultad natural de obrar de una manera u otra, y de no obrar, por lo que es responsable de sus actos." Si analizamos su dimensión social, según la Declaración de los Derechos del Hombre y del Ciudadano (1789), la libertad consiste en poder hacer todo aquello que no perjudique a los demás, garantizando así la libertad y los derechos individuales.

Existe un vínculo ineludible entre convivencia y libertad. Como seres sociales, ambas están necesariamente entrelazadas: una no puede existir plenamente sin la otra. Se suele argumentar que la libertad sin convivencia genera caos, mientras que la convivencia sin libertad conduce a la represión.

La voluntad y la formación en la coexistencia son carencias sociales actuales. No podemos dejar de reivindicar la libertad de expresión, siempre ejercida con responsabilidad, sin incitar al odio ni perjudicar a los demás. Sin embargo, en el camino se han perdido las formas y el debate argumentativo, lo que ha derivado en un aumento de las intolerancia sociales y alimentarias(!).

Dependiendo del contexto en el que se utilice, el concepto de libertad puede ser tergiversado hasta convertirse en una forma de manipulación, más cercana a la propaganda que a su significado original. Cuando una idea es repetida hasta la saciedad, su acepción puede distorsionarse en el imaginario colectivo, generando confusión y desvirtuando su verdadero sentido.

« anterior1234

menéame