WP Manifestindependent plugin directory
manifest / integrations / wp-plugin-shortcode-pour-atmo-aura

Shortcode pour Atmo Auvergne-Rhône-Alpes WP Registry grade B. Medium-severity findings · 2 findingsWP RegistryMedium-severity findings · 2 findingsOpen the reportB

Plugin Wordpress pour récupérer les données de l'API d'Atmo Auvergne-Rhône-Alpes

★ 0stars
12release downloads
≈10active sites
v1.0.0-beta-2latest · 3 years ago

Install

Download shortcode-pour-atmo-aura.zip From the v1.0.0-beta release on GitHub, May 11, 2023

Upload it under Plugins → Add New Plugin → Upload Plugin, then activate.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/bazmap/wp-plugin-shortcode-pour-atmo-aura/releases/download/v1.0.0-beta/shortcode-pour-atmo-aura.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

Auteur Arthur Bazin

Plugin WordPress pour récupérer et afficher les données de l'API Atmo Auvergne-Rhône-Alpes.
:warning: Ce plugin est NON officiel.

Pour récupérer les données, une clé d'API est nécessaire et disponible depuis le site de l'API.

Documentation

L'utilisation se fait simplement en plaçant le shortcode suivant : [spaa]

Plusieurs paramètres sont disponibles afin de spécifier les données voulues :

  • indicateur :
    • horodatage : renvoi la date et l'heure de récupération des données.
    • lien : renvoi un lien vers les données de la commune dont le code INSEE est spécifiée dans les paramètres. A utiliser avec le paramètre : texte,
    • vigilance : renvoi un bloc HTML détaillant les vigilances pollution. Les balises utilisées sont <p> s'il n'y a aucune vigilance, <ul> s'il y a une ou plusieurs vigilances.
    • recommandation : renvoi un bloc HTML détaillant les recommandations en fonction de l'indice global actuel.
    • indice : defaut : renvoi différentes informations sur l'état de l'atmosphère. A utiliser avec les paramètres : echeance, polluant et parametre.
  • echeance : uniquement avec le paramètre indicateur=indice.
    • n : défaut : valeurs de pollution pour le jour même.
    • n+1 : valeurs de pollution pour le jour suivant.
  • polluant : polluant pour lequel afficher les données, uniquement avec le paramètre indicateur=indice.
    • global : défaut : état global de l'air.
    • PM2.5 : microparticule inférieur à 2,5 micron.
    • PM10 : microparticule inférieur à 10 micron.
    • SO2 : dioxyde de souffre.
    • O3 : ozone.
    • NO2 : dioxyde d'azote.
  • parametre : uniquement avec le paramètre indicateur=indice.
    • nom : nom du polluant (par exemple "Ozone").
    • abbreviation : abbreviation (par exemple "03").
    • indice num : indice numérique (par exemple "3").
    • indice txt : indice textuel (par exemple "Mauvais").
    • concentration : valeur de concentration absolue.
    • image : icône colorée représentant l'indice.
    • widget : defaut : code HTML contenant un ensemble d'informations sur le polluant et l'indice lié.
    • gauge : code HTML contenant une gauge indicant le niveau d'indice pour le polluant considéré.
  • texte : uniquement avec le paramètre indicateur=lien. Texte à afficher dans le lien généré. Par défaut, le texte suivant est utilisé : "Données de ma commune sur le site de l'observatoire de la qualité de l'air en Auvergne-Rhône-Alpes"
  • debug : utilisé sans valeur, les données bruttes sont renvoyées. Ce paramètre prime sur tous les autres.

Voici quelques exemples d'utilisation du shortcode :
[spaa]
=> equivalent à [spaa indicateur="indice" echeance="n" polluant="global" parametre="widget"]

[spaa echeance="n+1" polluant="PM2.5"]
=>equivalent à [spaa indicateur="indice" echeance="n+1" polluant="PM2.5" parametre="widget"]

[spaa echeance="n+1" polluant="PM2.5" debug]
=>equivalent à [spaa debug]

[spaa indicateur="vigilance"]

[spaa indicateur="horodatage"]

[spaa indicateur="recommandation"]

[spaa indicateur="lien" texte="Données pour ma commune"]

Quelques captures d'écran

Ecran de paramétrage Exemple de rendu Exemple de mise en forme pour le rendu de la capture précédente

Releases

2 releases. Each count is every asset in that release; expand a row for the breakdown.

Tag
Published
Assets
Downloads
v1.0.0-beta-2 latest
Jul 9, 2023 3 years ago
tag only
—
May 11, 2023 3 years ago
shortcode-pour-atmo-aura.zip
12

Active-site estimate ≈10 comes from the median of recent superseded releases. Method.

B grade

Security

Shortcode pour Atmo Auvergne-Rhône-Alpes 1.0.0-beta · audited by WP Registry

Medium-severity findings.

2 medium
Audited release
1.0.0-beta
Findings
2
Worst severity
medium
Content hash
89616ba88be162a6c8a0d691…

Findings

  • medium Atmo API token transmitted over cleartext HTTP in query strings

    insecure_config

    get_api_data builds http://api.atmo-aura.fr/... URLs with api_token={$api_key} and calls wp_remote_get. The configured cle_api setting traverses the network unencrypted and appears in URL logs, enabling token theft and quota abuse.

    functions/class-functionalities.php:293-322

    Recommendation

    Use https:// endpoints; pass the token via Authorization header instead of the query string.

  • medium Shortcode outputs unsanitized API-derived HTML (stored XSS if API content is hostile)

    xss_stored

    format_data_definition / format_data_vigilance / format_data_indice build HTML by concatenating API fields (picto_url, categorie, texte, vigilance commentaire, etc.) without esc_url/esc_html/wp_kses. Results are cached in an option and returned by [spaa] to all visitors. Compromised or MITM'd API responses (easier over HTTP) become persistent frontend XSS.

    functions/class-functionalities.php:372-390

    Recommendation

    Escape all API strings with esc_html/esc_url or pass assembled markup through wp_kses_post before caching and before shortcode return.

WP Registry hashes the installable build and reports on that exact bytes-for-bytes copy. Embargoed findings are withheld until they are disclosed, so a clean verdict means nothing public is outstanding. WP Manifest does not audit code itself.