{"id":235875,"date":"2020-08-28T17:27:19","date_gmt":"2020-08-28T15:27:19","guid":{"rendered":"https:\/\/emariete.com\/?p=235875"},"modified":"2020-08-28T17:27:19","modified_gmt":"2020-08-28T15:27:19","slug":"vulnerability-meteotemplate-as-affects-each-other","status":"publish","type":"post","link":"https:\/\/emariete.com\/en\/vulnerabilidad-meteotemplate-como-afecta-seo\/","title":{"rendered":"Vulnerability in Meteotemplate and how it affects SEO"},"content":{"rendered":"<p><b><div class=\"trp-shortcode-switcher__wrapper\"\r\n     style=\"--bg:#ffffff;--bg-hover:#0000000d;--text:#143852;--text-hover:#1d2327;--border:1px solid #1438521a;--border-width:1px;--border-color:#1438521a;--border-radius:5px;--flag-radius:2px;--flag-size:18px;--aspect-ratio:4\/3;--font-size:14px;--transition-duration:0.2s\"\r\n     role=\"group\"\r\n     data-open-mode=\"hover\">\r\n\r\n    \r\n        <!-- ANCHOR (in-flow only; sizing\/borders; inert) -->\r\n        <div class=\"trp-language-switcher trp-ls-dropdown trp-shortcode-switcher trp-shortcode-anchor trp-open-on-hover\"\r\n             aria-hidden=\"true\"\r\n             inert\r\n data-no-translation>\r\n                <div class=\"trp-current-language-item__wrapper\">\r\n        <a class=\"trp-language-item trp-language-item__default trp-language-item__current\" data-no-translation href=\"https:\/\/emariete.com\/en\/wp-json\/wp\/v2\/posts\/235875\" title=\"English (UK)\"><img decoding=\"async\" src=\"https:\/\/emariete.com\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/en_GB.svg\" class=\"trp-flag-image\" alt=\"\" role=\"presentation\" loading=\"lazy\" \/><span class=\"trp-language-item-name\">English (UK)<\/span><\/a>                    <svg class=\"trp-shortcode-arrow\" width=\"20\" height=\"20\" viewbox=\"0 0 20 21\" fill=\"none\" aria-hidden=\"true\" focusable=\"false\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                <path d=\"M5 8L10 13L15 8\" stroke=\"var(--text)\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n            <\/svg>\r\n            <\/div>\r\n            <\/div>\r\n\r\n        <!-- OVERLAY (positioned; interactive surface) -->\r\n        <div class=\"trp-language-switcher trp-ls-dropdown trp-shortcode-switcher trp-shortcode-overlay trp-open-on-hover\"\r\n             role=\"navigation\"\r\n             aria-label=\"Website language selector\"\r\n             data-no-translation\r\n>\r\n                <div class=\"trp-current-language-item__wrapper\">\r\n        <div class=\"trp-language-item trp-language-item__default trp-language-item__current\" data-no-translation role=\"button\" aria-expanded=\"false\" tabindex=\"0\" aria-label=\"Change language\" aria-controls=\"trp-shortcode-dropdown-6a82526f5f443\"><img decoding=\"async\" src=\"https:\/\/emariete.com\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/en_GB.svg\" class=\"trp-flag-image\" alt=\"\" role=\"presentation\" loading=\"lazy\" \/><span class=\"trp-language-item-name\">English (UK)<\/span><\/div>                    <svg class=\"trp-shortcode-arrow\" width=\"20\" height=\"20\" viewbox=\"0 0 20 21\" fill=\"none\" aria-hidden=\"true\" focusable=\"false\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                <path d=\"M5 8L10 13L15 8\" stroke=\"var(--text)\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n            <\/svg>\r\n            <\/div>\r\n    \r\n            <div class=\"trp-switcher-dropdown-list\"\r\n                 id=\"trp-shortcode-dropdown-6a82526f5f443\"\r\n                 role=\"group\"\r\n                 aria-label=\"Available languages\"\r\n                 hidden\r\n inert\r\n>\r\n                                                            <a class=\"trp-language-item\" href=\"https:\/\/emariete.com\/en\/wp-json\/wp\/v2\/posts\/235875\" title=\"Spanish\">\r\n                            <img decoding=\"async\" src=\"https:\/\/emariete.com\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/es_ES.svg\" class=\"trp-flag-image\" alt=\"\" role=\"presentation\" loading=\"lazy\" \/>                                                            <span class=\"trp-language-item-name\" data-no-translation>Espa\u00f1ol<\/span>\r\n                                                                                <\/a>\r\n                                                <\/div>\r\n        <\/div>\r\n\r\n    <\/div>\r\n<\/b><\/p>\n<p><b><\/b><\/p>\n<h2>Vulnerability in Meteotemplate<\/h2>\n<h2>What is Meteotemplate?<\/h2>\n<p><span style=\"font-size: 18px;\">Meteotemplate en <\/span><strong style=\"font-size: 18px;\">a software package<\/strong><span style=\"font-size: 18px;\">or template, which hundreds of amateur weather stations around the world use to create comprehensive and eye-catching web pages with weather data.<\/span><\/p>\n<p><a href=\"https:\/\/emariete.com\/en\/estacion-meteorologica-madrid-espana\/\">My weather station<\/a> sends its data to the internet, for several years now with the help of a <a href=\"https:\/\/emariete.com\/en\/my-meteorological-station-start-up\/\">Raspberry Pi, WeeWx open source software, and the Meteotemplate template<\/a><a title=\"Meteotemplate \" href=\"http:\/\/www.meteotemplate.com\/web\/index.php\" target=\"_blank\" rel=\"noopener noreferrer\">.<\/a><\/p>\n<p>I recently discovered while analysing data from the eMariete.com server that <strong>was receiving rather suspicious traffic<\/strong>. I looked into it and discovered that the problem was in Meteotemplate.<\/p>\n<p><strong>Meteotemplate has an open redirect vulnerability<\/strong> (technically called <em>CWE-601 [ URL Redirection to Untrusted Site ('Open Redirect') ]<\/em>) which makes \"<em>the bad guys<\/em>\"can use it to<strong> committing their misdeeds<\/strong> (mainly attacks<strong>\u00a0of phishing, <\/strong>but is usable for many more types of attack and traffic and link masking).<\/p>\n<div class=\"ms-editor-squiggler\" style=\"animation: initial; transition: initial; color: initial; color-scheme: initial; font: initial; font-feature-settings: initial; font-kerning: initial; font-optical-sizing: initial; font-variation-settings: initial; text-orientation: initial; text-rendering: initial; -webkit-font-smoothing: initial; -webkit-locale: initial; -webkit-text-orientation: initial; -webkit-writing-mode: initial; writing-mode: initial; zoom: initial; place-content: initial; place-items: initial; place-self: initial; alignment-baseline: initial; appearance: initial; backdrop-filter: initial; backface-visibility: initial; background: initial; background-blend-mode: initial; baseline-shift: initial; block-size: initial; border-block-end: initial; border-block-start: initial; border: initial; border-radius: initial; border-collapse: initial; border-inline-end: initial; border-inline-start: initial; bottom: initial; box-shadow: initial; box-sizing: initial; break-after: initial; break-before: initial; break-inside: initial; buffered-rendering: initial; caption-side: initial; caret-color: initial; clear: initial; clip: initial; clip-path: initial; clip-rule: initial; color-interpolation: initial; color-interpolation-filters: initial; color-rendering: initial; columns: initial; column-fill: initial; gap: initial; column-rule: initial; column-span: initial; contain: initial; contain-intrinsic-size: initial; content: initial; counter-increment: initial; counter-reset: initial; cursor: initial; cx: initial; cy: initial; d: initial; display: block; dominant-baseline: initial; empty-cells: initial; fill: initial; fill-opacity: initial; fill-rule: initial; filter: initial; flex: initial; flex-flow: initial; float: initial; flood-color: initial; flood-opacity: initial; grid: initial; grid-area: initial; height: initial; hyphens: initial; image-orientation: initial; image-rendering: initial; inline-size: initial; isolation: initial; left: initial; letter-spacing: initial; lighting-color: initial; line-break: initial; list-style: initial; margin-block-end: initial; margin-block-start: initial; margin: initial; margin-inline-end: initial; margin-inline-start: initial; marker: initial; mask: initial; mask-type: initial; max-block-size: initial; max-height: initial; max-inline-size: initial; max-width: initial; min-block-size: initial; min-height: initial; min-inline-size: initial; min-width: initial; mix-blend-mode: initial; object-fit: initial; object-position: initial; offset: initial; opacity: initial; order: initial; origin-trial-test-property: initial; orphans: initial; outline: initial; outline-offset: initial; overflow-anchor: initial; overflow-wrap: initial; overflow: initial; overscroll-behavior-block: initial; overscroll-behavior-inline: initial; overscroll-behavior: initial; padding-block-end: initial; padding-block-start: initial; padding: initial; padding-inline-end: initial; padding-inline-start: initial; paint-order: initial; perspective: initial; perspective-origin: initial; pointer-events: initial; position: initial; quotes: initial; r: initial; resize: initial; right: initial; ruby-position: initial; rx: initial; ry: initial; scroll-behavior: initial; scroll-margin-block: initial; scroll-margin: initial; scroll-margin-inline: initial; scroll-padding-block: initial; scroll-padding: initial; scroll-padding-inline: initial; scroll-snap-align: initial; scroll-snap-stop: initial; scroll-snap-type: initial; shape-image-threshold: initial; shape-margin: initial; shape-outside: initial; shape-rendering: initial; size: initial; speak: initial; stop-color: initial; stop-opacity: initial; stroke: initial; stroke-dasharray: initial; stroke-dashoffset: initial; stroke-linecap: initial; stroke-linejoin: initial; stroke-miterlimit: initial; stroke-opacity: initial; stroke-width: initial; tab-size: initial; table-layout: initial; text-align: initial; text-align-last: initial; text-anchor: initial; text-combine-upright: initial; text-decoration: initial; text-decoration-skip-ink: initial; text-indent: initial; text-overflow: initial; text-shadow: initial; text-size-adjust: initial; text-transform: initial; text-underline-position: initial; top: initial; touch-action: initial; transform: initial; transform-box: initial; transform-origin: initial; transform-style: initial; user-select: initial; vector-effect: initial; vertical-align: initial; visibility: initial; -webkit-app-region: initial; border-spacing: initial; -webkit-border-image: initial; -webkit-box-align: initial; -webkit-box-decoration-break: initial; -webkit-box-direction: initial; -webkit-box-flex: initial; -webkit-box-ordinal-group: initial; -webkit-box-orient: initial; -webkit-box-pack: initial; -webkit-box-reflect: initial; -webkit-font-size-delta: initial; -webkit-highlight: initial; -webkit-hyphenate-character: initial; -webkit-line-break: initial; -webkit-line-clamp: initial; -webkit-mask-box-image: initial; -webkit-mask: initial; -webkit-mask-composite: initial; -webkit-perspective-origin-x: initial; -webkit-perspective-origin-y: initial; -webkit-print-color-adjust: initial; -webkit-rtl-ordering: initial; -webkit-ruby-position: initial; -webkit-tap-highlight-color: initial; -webkit-text-combine: initial; -webkit-text-decorations-in-effect: initial; -webkit-text-emphasis: initial; -webkit-text-emphasis-position: initial; -webkit-text-fill-color: initial; -webkit-text-security: initial; -webkit-text-stroke: initial; -webkit-transform-origin-x: initial; -webkit-transform-origin-y: initial; -webkit-transform-origin-z: initial; -webkit-user-drag: initial; -webkit-user-modify: initial; white-space: initial; widows: initial; width: initial; will-change: initial; word-break: initial; word-spacing: initial; x: initial; y: initial; z-index: initial;\"><\/div>\n<div class=\"ms-editor-squiggler\" style=\"animation: initial; transition: initial; color: initial; color-scheme: initial; font: initial; font-feature-settings: initial; font-kerning: initial; font-optical-sizing: initial; font-variation-settings: initial; text-orientation: initial; text-rendering: initial; -webkit-font-smoothing: initial; -webkit-locale: initial; -webkit-text-orientation: initial; -webkit-writing-mode: initial; writing-mode: initial; zoom: initial; place-content: initial; place-items: initial; place-self: initial; alignment-baseline: initial; appearance: initial; backdrop-filter: initial; backface-visibility: initial; background: initial; background-blend-mode: initial; baseline-shift: initial; block-size: initial; border-block-end: initial; border-block-start: initial; border: initial; border-radius: initial; border-collapse: initial; border-inline-end: initial; border-inline-start: initial; bottom: initial; box-shadow: initial; box-sizing: initial; break-after: initial; break-before: initial; break-inside: initial; buffered-rendering: initial; caption-side: initial; caret-color: initial; clear: initial; clip: initial; clip-path: initial; clip-rule: initial; color-interpolation: initial; color-interpolation-filters: initial; color-rendering: initial; columns: initial; column-fill: initial; gap: initial; column-rule: initial; column-span: initial; contain: initial; contain-intrinsic-size: initial; content: initial; counter-increment: initial; counter-reset: initial; cursor: initial; cx: initial; cy: initial; d: initial; display: block; dominant-baseline: initial; empty-cells: initial; fill: initial; fill-opacity: initial; fill-rule: initial; filter: initial; flex: initial; flex-flow: initial; float: initial; flood-color: initial; flood-opacity: initial; grid: initial; grid-area: initial; height: initial; hyphens: initial; image-orientation: initial; image-rendering: initial; inline-size: initial; isolation: initial; left: initial; letter-spacing: initial; lighting-color: initial; line-break: initial; list-style: initial; margin-block-end: initial; margin-block-start: initial; margin: initial; margin-inline-end: initial; margin-inline-start: initial; marker: initial; mask: initial; mask-type: initial; max-block-size: initial; max-height: initial; max-inline-size: initial; max-width: initial; min-block-size: initial; min-height: initial; min-inline-size: initial; min-width: initial; mix-blend-mode: initial; object-fit: initial; object-position: initial; offset: initial; opacity: initial; order: initial; origin-trial-test-property: initial; orphans: initial; outline: initial; outline-offset: initial; overflow-anchor: initial; overflow-wrap: initial; overflow: initial; overscroll-behavior-block: initial; overscroll-behavior-inline: initial; overscroll-behavior: initial; padding-block-end: initial; padding-block-start: initial; padding: initial; padding-inline-end: initial; padding-inline-start: initial; paint-order: initial; perspective: initial; perspective-origin: initial; pointer-events: initial; position: initial; quotes: initial; r: initial; resize: initial; right: initial; ruby-position: initial; rx: initial; ry: initial; scroll-behavior: initial; scroll-margin-block: initial; scroll-margin: initial; scroll-margin-inline: initial; scroll-padding-block: initial; scroll-padding: initial; scroll-padding-inline: initial; scroll-snap-align: initial; scroll-snap-stop: initial; scroll-snap-type: initial; shape-image-threshold: initial; shape-margin: initial; shape-outside: initial; shape-rendering: initial; size: initial; speak: initial; stop-color: initial; stop-opacity: initial; stroke: initial; stroke-dasharray: initial; stroke-dashoffset: initial; stroke-linecap: initial; stroke-linejoin: initial; stroke-miterlimit: initial; stroke-opacity: initial; stroke-width: initial; tab-size: initial; table-layout: initial; text-align: initial; text-align-last: initial; text-anchor: initial; text-combine-upright: initial; text-decoration: initial; text-decoration-skip-ink: initial; text-indent: initial; text-overflow: initial; text-shadow: initial; text-size-adjust: initial; text-transform: initial; text-underline-position: initial; top: initial; touch-action: initial; transform: initial; transform-box: initial; transform-origin: initial; transform-style: initial; user-select: initial; vector-effect: initial; vertical-align: initial; visibility: initial; -webkit-app-region: initial; border-spacing: initial; -webkit-border-image: initial; -webkit-box-align: initial; -webkit-box-decoration-break: initial; -webkit-box-direction: initial; -webkit-box-flex: initial; -webkit-box-ordinal-group: initial; -webkit-box-orient: initial; -webkit-box-pack: initial; -webkit-box-reflect: initial; -webkit-font-size-delta: initial; -webkit-highlight: initial; -webkit-hyphenate-character: initial; -webkit-line-break: initial; -webkit-line-clamp: initial; -webkit-mask-box-image: initial; -webkit-mask: initial; -webkit-mask-composite: initial; -webkit-perspective-origin-x: initial; -webkit-perspective-origin-y: initial; -webkit-print-color-adjust: initial; -webkit-rtl-ordering: initial; -webkit-ruby-position: initial; -webkit-tap-highlight-color: initial; -webkit-text-combine: initial; -webkit-text-decorations-in-effect: initial; -webkit-text-emphasis: initial; -webkit-text-emphasis-position: initial; -webkit-text-fill-color: initial; -webkit-text-security: initial; -webkit-text-stroke: initial; -webkit-transform-origin-x: initial; -webkit-transform-origin-y: initial; -webkit-transform-origin-z: initial; -webkit-user-drag: initial; -webkit-user-modify: initial; white-space: initial; widows: initial; width: initial; will-change: initial; word-break: initial; word-spacing: initial; x: initial; y: initial; z-index: initial;\"><\/div>\n<div class=\"ms-editor-squiggler\" style=\"animation: initial; transition: initial; color: initial; color-scheme: initial; font: initial; font-feature-settings: initial; font-kerning: initial; font-optical-sizing: initial; font-variation-settings: initial; text-orientation: initial; text-rendering: initial; -webkit-font-smoothing: initial; -webkit-locale: initial; -webkit-text-orientation: initial; -webkit-writing-mode: initial; writing-mode: initial; zoom: initial; place-content: initial; place-items: initial; place-self: initial; alignment-baseline: initial; appearance: initial; backdrop-filter: initial; backface-visibility: initial; background: initial; background-blend-mode: initial; baseline-shift: initial; block-size: initial; border-block-end: initial; border-block-start: initial; border: initial; border-radius: initial; border-collapse: initial; border-inline-end: initial; border-inline-start: initial; bottom: initial; box-shadow: initial; box-sizing: initial; break-after: initial; break-before: initial; break-inside: initial; buffered-rendering: initial; caption-side: initial; caret-color: initial; clear: initial; clip: initial; clip-path: initial; clip-rule: initial; color-interpolation: initial; color-interpolation-filters: initial; color-rendering: initial; columns: initial; column-fill: initial; gap: initial; column-rule: initial; column-span: initial; contain: initial; contain-intrinsic-size: initial; content: initial; counter-increment: initial; counter-reset: initial; cursor: initial; cx: initial; cy: initial; d: initial; display: block; dominant-baseline: initial; empty-cells: initial; fill: initial; fill-opacity: initial; fill-rule: initial; filter: initial; flex: initial; flex-flow: initial; float: initial; flood-color: initial; flood-opacity: initial; grid: initial; grid-area: initial; height: initial; hyphens: initial; image-orientation: initial; image-rendering: initial; inline-size: initial; isolation: initial; left: initial; letter-spacing: initial; lighting-color: initial; line-break: initial; list-style: initial; margin-block-end: initial; margin-block-start: initial; margin: initial; margin-inline-end: initial; margin-inline-start: initial; marker: initial; mask: initial; mask-type: initial; max-block-size: initial; max-height: initial; max-inline-size: initial; max-width: initial; min-block-size: initial; min-height: initial; min-inline-size: initial; min-width: initial; mix-blend-mode: initial; object-fit: initial; object-position: initial; offset: initial; opacity: initial; order: initial; origin-trial-test-property: initial; orphans: initial; outline: initial; outline-offset: initial; overflow-anchor: initial; overflow-wrap: initial; overflow: initial; overscroll-behavior-block: initial; overscroll-behavior-inline: initial; overscroll-behavior: initial; padding-block-end: initial; padding-block-start: initial; padding: initial; padding-inline-end: initial; padding-inline-start: initial; paint-order: initial; perspective: initial; perspective-origin: initial; pointer-events: initial; position: initial; quotes: initial; r: initial; resize: initial; right: initial; ruby-position: initial; rx: initial; ry: initial; scroll-behavior: initial; scroll-margin-block: initial; scroll-margin: initial; scroll-margin-inline: initial; scroll-padding-block: initial; scroll-padding: initial; scroll-padding-inline: initial; scroll-snap-align: initial; scroll-snap-stop: initial; scroll-snap-type: initial; shape-image-threshold: initial; shape-margin: initial; shape-outside: initial; shape-rendering: initial; size: initial; speak: initial; stop-color: initial; stop-opacity: initial; stroke: initial; stroke-dasharray: initial; stroke-dashoffset: initial; stroke-linecap: initial; stroke-linejoin: initial; stroke-miterlimit: initial; stroke-opacity: initial; stroke-width: initial; tab-size: initial; table-layout: initial; text-align: initial; text-align-last: initial; text-anchor: initial; text-combine-upright: initial; text-decoration: initial; text-decoration-skip-ink: initial; text-indent: initial; text-overflow: initial; text-shadow: initial; text-size-adjust: initial; text-transform: initial; text-underline-position: initial; top: initial; touch-action: initial; transform: initial; transform-box: initial; transform-origin: initial; transform-style: initial; user-select: initial; vector-effect: initial; vertical-align: initial; visibility: initial; -webkit-app-region: initial; border-spacing: initial; -webkit-border-image: initial; -webkit-box-align: initial; -webkit-box-decoration-break: initial; -webkit-box-direction: initial; -webkit-box-flex: initial; -webkit-box-ordinal-group: initial; -webkit-box-orient: initial; -webkit-box-pack: initial; -webkit-box-reflect: initial; -webkit-font-size-delta: initial; -webkit-highlight: initial; -webkit-hyphenate-character: initial; -webkit-line-break: initial; -webkit-line-clamp: initial; -webkit-mask-box-image: initial; -webkit-mask: initial; -webkit-mask-composite: initial; -webkit-perspective-origin-x: initial; -webkit-perspective-origin-y: initial; -webkit-print-color-adjust: initial; -webkit-rtl-ordering: initial; -webkit-ruby-position: initial; -webkit-tap-highlight-color: initial; -webkit-text-combine: initial; -webkit-text-decorations-in-effect: initial; -webkit-text-emphasis: initial; -webkit-text-emphasis-position: initial; -webkit-text-fill-color: initial; -webkit-text-security: initial; -webkit-text-stroke: initial; -webkit-transform-origin-x: initial; -webkit-transform-origin-y: initial; -webkit-transform-origin-z: initial; -webkit-user-drag: initial; -webkit-user-modify: initial; white-space: initial; widows: initial; width: initial; will-change: initial; word-break: initial; word-spacing: initial; x: initial; y: initial; z-index: initial;\"><\/div>\n<div class=\"ms-editor-squiggler\" style=\"animation: initial; transition: initial; color: initial; color-scheme: initial; font: initial; font-feature-settings: initial; font-kerning: initial; font-optical-sizing: initial; font-variation-settings: initial; text-orientation: initial; text-rendering: initial; -webkit-font-smoothing: initial; -webkit-locale: initial; -webkit-text-orientation: initial; -webkit-writing-mode: initial; writing-mode: initial; zoom: initial; place-content: initial; place-items: initial; place-self: initial; alignment-baseline: initial; appearance: initial; backdrop-filter: initial; backface-visibility: initial; background: initial; background-blend-mode: initial; baseline-shift: initial; block-size: initial; border-block-end: initial; border-block-start: initial; border: initial; border-radius: initial; border-collapse: initial; border-inline-end: initial; border-inline-start: initial; bottom: initial; box-shadow: initial; box-sizing: initial; break-after: initial; break-before: initial; break-inside: initial; buffered-rendering: initial; caption-side: initial; caret-color: initial; clear: initial; clip: initial; clip-path: initial; clip-rule: initial; color-interpolation: initial; color-interpolation-filters: initial; color-rendering: initial; columns: initial; column-fill: initial; gap: initial; column-rule: initial; column-span: initial; contain: initial; contain-intrinsic-size: initial; content: initial; counter-increment: initial; counter-reset: initial; cursor: initial; cx: initial; cy: initial; d: initial; display: block; dominant-baseline: initial; empty-cells: initial; fill: initial; fill-opacity: initial; fill-rule: initial; filter: initial; flex: initial; flex-flow: initial; float: initial; flood-color: initial; flood-opacity: initial; grid: initial; grid-area: initial; height: initial; hyphens: initial; image-orientation: initial; image-rendering: initial; inline-size: initial; isolation: initial; left: initial; letter-spacing: initial; lighting-color: initial; line-break: initial; list-style: initial; margin-block-end: initial; margin-block-start: initial; margin: initial; margin-inline-end: initial; margin-inline-start: initial; marker: initial; mask: initial; mask-type: initial; max-block-size: initial; max-height: initial; max-inline-size: initial; max-width: initial; min-block-size: initial; min-height: initial; min-inline-size: initial; min-width: initial; mix-blend-mode: initial; object-fit: initial; object-position: initial; offset: initial; opacity: initial; order: initial; origin-trial-test-property: initial; orphans: initial; outline: initial; outline-offset: initial; overflow-anchor: initial; overflow-wrap: initial; overflow: initial; overscroll-behavior-block: initial; overscroll-behavior-inline: initial; overscroll-behavior: initial; padding-block-end: initial; padding-block-start: initial; padding: initial; padding-inline-end: initial; padding-inline-start: initial; paint-order: initial; perspective: initial; perspective-origin: initial; pointer-events: initial; position: initial; quotes: initial; r: initial; resize: initial; right: initial; ruby-position: initial; rx: initial; ry: initial; scroll-behavior: initial; scroll-margin-block: initial; scroll-margin: initial; scroll-margin-inline: initial; scroll-padding-block: initial; scroll-padding: initial; scroll-padding-inline: initial; scroll-snap-align: initial; scroll-snap-stop: initial; scroll-snap-type: initial; shape-image-threshold: initial; shape-margin: initial; shape-outside: initial; shape-rendering: initial; size: initial; speak: initial; stop-color: initial; stop-opacity: initial; stroke: initial; stroke-dasharray: initial; stroke-dashoffset: initial; stroke-linecap: initial; stroke-linejoin: initial; stroke-miterlimit: initial; stroke-opacity: initial; stroke-width: initial; tab-size: initial; table-layout: initial; text-align: initial; text-align-last: initial; text-anchor: initial; text-combine-upright: initial; text-decoration: initial; text-decoration-skip-ink: initial; text-indent: initial; text-overflow: initial; text-shadow: initial; text-size-adjust: initial; text-transform: initial; text-underline-position: initial; top: initial; touch-action: initial; transform: initial; transform-box: initial; transform-origin: initial; transform-style: initial; user-select: initial; vector-effect: initial; vertical-align: initial; visibility: initial; -webkit-app-region: initial; border-spacing: initial; -webkit-border-image: initial; -webkit-box-align: initial; -webkit-box-decoration-break: initial; -webkit-box-direction: initial; -webkit-box-flex: initial; -webkit-box-ordinal-group: initial; -webkit-box-orient: initial; -webkit-box-pack: initial; -webkit-box-reflect: initial; -webkit-font-size-delta: initial; -webkit-highlight: initial; -webkit-hyphenate-character: initial; -webkit-line-break: initial; -webkit-line-clamp: initial; -webkit-mask-box-image: initial; -webkit-mask: initial; -webkit-mask-composite: initial; -webkit-perspective-origin-x: initial; -webkit-perspective-origin-y: initial; -webkit-print-color-adjust: initial; -webkit-rtl-ordering: initial; -webkit-ruby-position: initial; -webkit-tap-highlight-color: initial; -webkit-text-combine: initial; -webkit-text-decorations-in-effect: initial; -webkit-text-emphasis: initial; -webkit-text-emphasis-position: initial; -webkit-text-fill-color: initial; -webkit-text-security: initial; -webkit-text-stroke: initial; -webkit-transform-origin-x: initial; -webkit-transform-origin-y: initial; -webkit-transform-origin-z: initial; -webkit-user-drag: initial; -webkit-user-modify: initial; white-space: initial; widows: initial; width: initial; will-change: initial; word-break: initial; word-spacing: initial; x: initial; y: initial; z-index: initial;\"><\/div>\n<h2>The CCN-157548 vulnerability<\/h2>\n<p>CCN-157548 is the code given for this vulnerability in the <a href=\"https:\/\/cert.civis.net\/en\/index.php?action=alert&amp;param=CCN-157548   rel=\" target=\"_blank\" rel=\"noopener noreferrer\">vulnerability catalogues<\/a>\u00a0with which the <strong>cybersecurity companies.<\/strong><\/p>\n<p><strong><a href=\"https:\/\/emariete.com\/wp-content\/uploads\/2020\/08\/Vulnerability-CCN-157548.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-235930 size-large\" src=\"https:\/\/emariete.com\/wp-content\/uploads\/2020\/08\/Vulnerability-CCN-157548-1024x449.png\" alt=\"Vulnerability CCN-157548\" width=\"1024\" height=\"449\" srcset=\"https:\/\/emariete.com\/wp-content\/uploads\/2020\/08\/Vulnerability-CCN-157548-1024x449.png 1024w, https:\/\/emariete.com\/wp-content\/uploads\/2020\/08\/Vulnerability-CCN-157548-300x132.png 300w, https:\/\/emariete.com\/wp-content\/uploads\/2020\/08\/Vulnerability-CCN-157548-768x337.png 768w, https:\/\/emariete.com\/wp-content\/uploads\/2020\/08\/Vulnerability-CCN-157548-1536x674.png 1536w, https:\/\/emariete.com\/wp-content\/uploads\/2020\/08\/Vulnerability-CCN-157548.png 1710w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/strong><\/p>\n<p>This vulnerability (of type <em>\u2018<strong>Open Redirect<\/strong>\u2018)<\/em> what allows the attacker to <strong>construct a URL with a given format<\/strong> which, apparently, points to a completely normal and legal website, but <strong>when the user clicks on it, he\/she is redirected to the website of the attacker's choice.<\/strong>.<\/p>\n<p>Exploiting a vulnerability like this <strong>greatly simplifies phishing attacks, since it<\/strong>\u00a0the name of the server in the manipulated link is <strong>identical<\/strong> al of the site \"<em>legal<\/em>\"which makes the links have a <strong>harmless appearance<\/strong>.<\/p>\n<p>The link may contain <strong>a parameter<\/strong> for the web application to <strong>redirect<\/strong> the request to the specified URL. By modifying that URL, which points to the malicious site, an attacker can successfully run a phishing scam and steal the user's credentials.<\/p>\n<p>Open redirection, or Open Redirect, <strong>is a bug in this programme<\/strong>which allows attackers to redirect users to malicious websites.<\/p>\n<p>An example of exploitation of this vulnerability would be where the attacker, in order to impersonate your bank, creates a link like<span style=\"color: #e02b20;\"> <em>https:\/\/tubanco.com\/entrar<\/em><\/span>\u00a0and when the user clicks on it <strong>is redirected to the web page that\u00a0<\/strong><span style=\"background-color: #ffffff; font-size: 18px; font-weight: bold;\">would like to\u00a0<\/span><strong style=\"font-size: 18px;\">the attacker<\/strong><span style=\"font-size: 18px;\">.<\/span><\/p>\n<p>If our website <span style=\"color: #e02b20;\"><em>https:\/\/<strong>myweb.com<\/strong>\/enter<\/em><\/span><em>\u00a0<\/em>is vulnerable, <em>the bad guy<\/em> create a URL such as\u00a0<em><span style=\"color: #e02b20;\">https:\/\/<strong>myweb.com<\/strong>\/enter\/redirect.php?https:\/\/elsitiodelmalo.com<\/span>\u00a0so that, when our unwary surfer clicks on the link, believing that he will come to our website, <\/em><strong>actually go to the website <em>of the bad guy<\/em><\/strong> (which can be passed off as <strong>for ours)<\/strong>\u00a0and request data from the user, for example.<\/p>\n<h2>How to fix the Meteotemplate vulnerability?<\/h2>\n<p>When I discovered the vulnerability on 8 June 2020, I reported it in the <a href=\"http:\/\/www.meteotemplate.com\/forum\/viewtopic.php?f=52&amp;t=1908&amp;p=9448#p9448\" target=\"_blank\" rel=\"noopener noreferrer\">official Meteotemplate forum<\/a> in the hope that <strong>Jachym<\/strong>The creator could fix it, but, unfortunately, he did, <strong>there was no response<\/strong>I have not received any comments, neither from Jachym nor from any other user (it seems that Jachym has deleted my post).<\/p>\n<p>A month and a half later, the <strong>21 August 2020<\/strong>I insisted again, adding more information, which I had discovered, and publishing a list of affected sites, so that they could see that there were thousands. <strong>There was no response either.<\/strong><\/p>\n<p>On 25 August I opted for <a title=\"go to the Meteotemplate thread on the Meteoclimatic forum\" href=\"https:\/\/forum.meteoclimatic.net\/index.php\/topic,8.msg23677.html#msg23677\" target=\"_blank\" rel=\"noopener noreferrer\">make it public in Meteoclimatic<\/a>which is <strong>the largest forum for meteorology enthusiasts in Spain<\/strong>and where many of them use this software. They immediately paid attention and <strong>in less than 24 hours, the user <span style=\"font-size: large;\"><a href=\"https:\/\/forum.meteoclimatic.net\/index.php\/topic,8.msg23699.html#msg23699\"><span style=\"text-decoration: underline;\">jmviper<\/span><\/a><\/span> published<\/strong><strong style=\"font-size: 18px;\">\u00a0the code of redirect.php,<\/strong><span style=\"font-size: 18px; background-color: #ffffff;\">\u00a0<\/span><span style=\"font-size: 18px; background-color: #ffffff;\">which you can see below,\u00a0<\/span><span style=\"font-size: 18px;\">fixing the vulnerability in Meteotemplate.<\/span><\/p>\n<p><script src=\"https:\/\/gist.github.com\/melkati\/62cd3153b3cd81c796287841aafab6ca.js\"><\/script><\/p>\n<h2>The impact on SEO<\/h2>\n<h3>What is SEO?<\/h3>\n<p>SEO (Search Engine Optimisation) is the science\/art of <strong>optimising web pages for search engine positioning<\/strong>.<\/p>\n<p>The aim is to ensure that when a user searches for something on Google, or any other search engine, the page appears in the results. <strong>as high as possible<\/strong>.<\/p>\n<p>What you have to keep in mind, is that for Google the most important thing is to <strong>resolve the search intent<\/strong> of users.<\/p>\n<p>But how does Google determine <strong>which pages should be put first\u00a0<\/strong>in the results?<\/p>\n<p>Logically, Google has <strong>many things<\/strong> The search results are taken into account when deciding which pages to include in the search results and which pages to put first in the search results.<\/p>\n<p>Of course one of the most important factors is <strong>the content<\/strong> of the pages, in addition to the <strong>title of the page<\/strong>but, in addition, to know which pages are of genuine <strong>quality<\/strong> and may appeal more to users, it is based on other <strong><em>signals<\/em>\u00a0which can be positive or negative<\/strong> how:<\/p>\n<h3>Positive signals for Google<\/h3>\n<p>These are the ones that indicate to Google that the page can be <strong>interesting, like<\/strong> users and resolve search intent.<\/p>\n<ul>\n<li><strong>What other sites link to this one?<\/strong> If many other sites link to this one, it may mean that its content is important.<\/li>\n<li><strong>What is the subject matter of the pages that link to this one?<\/strong> If the pages linking to it are of the same subject matter as the question, the content is more likely to be relevant to the user.<\/li>\n<li><strong>What is the reputation of other sites linking to this one?<\/strong> It is not the same to link to the page Perico el de los palotes (I am referring to a page without any importance, with little content, to which almost nobody links, etc.) as it is to link to a page that is not linked to by a <strong>major newspaper or an authoritative website<\/strong> (especially if it is of the same subject matter).<\/li>\n<\/ul>\n<h3>Negative signals for Google<\/h3>\n<p>Just as Google takes into account these signals, which tell it that a page has this \"<em>prestige<\/em>\"There are other signs that tell you that the page may have a <strong>bad, uninteresting, unoriginal content<\/strong> (copied from other sites) and even that their <strong>content that is dishonest or outright illegal<\/strong>.<\/p>\n<ul>\n<li><strong>Does the page receive links from suspicious sites?<\/strong> If the page receives links from porn sites, illegal sales, sale of illegal products, etc. <strong>it is more than possible that Google will penalise this page.<\/strong> and that it does not appear in the search results (even if its content is completely clean, legal and correct). After all, Google likes its results to be suitable for all audiences (even if it is trying to meet the search intent of those who want something else).<\/li>\n<li><strong>Does the page have frequent syntactic, concordance, or similar spelling errors?<\/strong> This may indicate to you that your content is of low quality, that it has been automatically generated or translated.<\/li>\n<li><strong>Is the page updated frequently?<\/strong> Google likes pages that are updated frequently and have <strong>fresh content<\/strong>as well as the majority of users.<\/li>\n<\/ul>\n<h3>What Google sees<\/h3>\n<p>If our site is exploitable by such a vulnerability, it will soon <strong>many cybercriminals will use it<\/strong> to redirect users to other sites, creating <strong>multiple links on many sites,<\/strong> forums, pages of all kinds, advertising, etc. by creating links such as\u00a0<em><a href=\"https:\/\/miweb.com\/entrar\/redirect.php?https:\/\/elsitiodelmalo.com\"><span style=\"color: #e02b20;\">https:\/\/<strong>myweb.com<\/strong>\/enter\/redirect.php?https:\/\/elsitiodelmalo.com<\/span><\/a>\u00a0<\/em><\/p>\n<p>It should be borne in mind that cybercriminals, in many cases, use automatic tools to create these links, so it will be normal for our website to receive hundreds or thousands of malicious links in a very short time.<\/p>\n<p><strong>What Google will see is that many sites dedicated to sex, malware, phishing, illegal activities, etc. link to our site, it won't like it.<em>our friendships<\/em>\"and can penalise our page for this by causing the page not to appear in the search engine results (or at least not in the top positions).<\/strong><\/p>\n<h3>Actual Google penalty data<\/h3>\n<p>In the following table we can see the data of <strong>probability of penalty<\/strong> by Google, as calculated by the tool <a href=\"https:\/\/moz.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">MOZ<\/a>on websites using Meteotemplate.<\/p>\n<p>I have limited the list to sites that have a higher chance of 50%, there are many more with lower values.<\/p>\n<p>For privacy and security reasons I have removed part of the URL.<\/p>\n<div class=\"essb_break_scroll\"><\/div>","protected":false},"excerpt":{"rendered":"<p>Vulnerability in Meteotemplate What is Meteotemplate? Meteotemplate is a software package, or template, that hundreds of amateur weather stations around the world use to create comprehensive and eye-catching web pages with weather data. My weather station has been sending its data to the internet for several years with the help of a Raspberry Pi, ... <a title=\"Vulnerability in Meteotemplate and how it affects SEO\" class=\"read-more\" href=\"https:\/\/emariete.com\/en\/vulnerabilidad-meteotemplate-como-afecta-seo\/\" aria-label=\"Read more about Meteotemplate vulnerability and how it affects SEO\">Read more<\/a><\/p>","protected":false},"author":1,"featured_media":243002,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_uag_custom_page_level_css":"","_lmt_disableupdate":"yes","_lmt_disable":"no","footnotes":""},"categories":[15],"tags":[54],"class_list":["post-235875","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-estacion-meteorologica","tag-weewx"],"modified_by":"Mariete","uagb_featured_image_src":{"full":["https:\/\/emariete.com\/wp-content\/uploads\/2020\/08\/VULNERABILIDAD-EN-METEOTEMPLATE_upscale.jpg",1680,945,false],"thumbnail":["https:\/\/emariete.com\/wp-content\/uploads\/2020\/08\/VULNERABILIDAD-EN-METEOTEMPLATE_upscale-150x150.jpg",150,150,true],"medium":["https:\/\/emariete.com\/wp-content\/uploads\/2020\/08\/VULNERABILIDAD-EN-METEOTEMPLATE_upscale-300x169.jpg",300,169,true],"medium_large":["https:\/\/emariete.com\/wp-content\/uploads\/2020\/08\/VULNERABILIDAD-EN-METEOTEMPLATE_upscale-768x432.jpg",768,432,true],"large":["https:\/\/emariete.com\/wp-content\/uploads\/2020\/08\/VULNERABILIDAD-EN-METEOTEMPLATE_upscale-1024x576.jpg",1024,576,true],"1536x1536":["https:\/\/emariete.com\/wp-content\/uploads\/2020\/08\/VULNERABILIDAD-EN-METEOTEMPLATE_upscale-1536x864.jpg",1536,864,true],"2048x2048":["https:\/\/emariete.com\/wp-content\/uploads\/2020\/08\/VULNERABILIDAD-EN-METEOTEMPLATE_upscale.jpg",1680,945,false],"trp-custom-language-flag":["https:\/\/emariete.com\/wp-content\/uploads\/2020\/08\/VULNERABILIDAD-EN-METEOTEMPLATE_upscale-18x10.jpg",18,10,true]},"uagb_author_info":{"display_name":"Mariete","author_link":"https:\/\/emariete.com\/en\/author\/admin_xlyz052h\/"},"uagb_comment_info":0,"uagb_excerpt":"Vulnerabilidad en Meteotemplate \u00bfQu\u00e9 es Meteotemplate? Meteotemplate es un paquete de software, o plantilla, que cientos de estaciones meteorol\u00f3gicas de aficionados de todo el mundo utilizan para crear completas y vistosas p\u00e1ginas web con datos meteorol\u00f3gicos. Mi estaci\u00f3n meteorol\u00f3gica env\u00eda sus datos a internet, desde hace varios a\u00f1os con la ayuda de una Raspberry Pi,&hellip;","_links":{"self":[{"href":"https:\/\/emariete.com\/en\/wp-json\/wp\/v2\/posts\/235875","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/emariete.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/emariete.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/emariete.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/emariete.com\/en\/wp-json\/wp\/v2\/comments?post=235875"}],"version-history":[{"count":2,"href":"https:\/\/emariete.com\/en\/wp-json\/wp\/v2\/posts\/235875\/revisions"}],"predecessor-version":[{"id":242981,"href":"https:\/\/emariete.com\/en\/wp-json\/wp\/v2\/posts\/235875\/revisions\/242981"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/emariete.com\/en\/wp-json\/wp\/v2\/media\/243002"}],"wp:attachment":[{"href":"https:\/\/emariete.com\/en\/wp-json\/wp\/v2\/media?parent=235875"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/emariete.com\/en\/wp-json\/wp\/v2\/categories?post=235875"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/emariete.com\/en\/wp-json\/wp\/v2\/tags?post=235875"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}