From 59eda3d5033abdba214f6c1224f93c6f48eb1a7d Mon Sep 17 00:00:00 2001 From: RandomHuman Date: Sun, 25 Jun 2023 19:04:56 -0600 Subject: [PATCH] comment out all of the safe browsing stuff because nothing works --- WebBrowser/Program.cs | 17 ++- WebBrowser/Xero Browser.csproj | 1 + WebBrowser/blocked.png | Bin 0 -> 113133 bytes WebBrowser/blocked.svg | 1 + WebBrowser/blockedSite.css | 72 +++++++++++++ WebBrowser/blockedSite.js | 168 ++++++++++++++++++++++++++++++ WebBrowser/error-pages.css | 87 ++++++++++++++++ WebBrowser/frmBrowser.cs | 37 ++++--- WebBrowser/safebrowsingblock.html | 35 +++++++ 9 files changed, 400 insertions(+), 18 deletions(-) create mode 100644 WebBrowser/blocked.png create mode 100644 WebBrowser/blocked.svg create mode 100644 WebBrowser/blockedSite.css create mode 100644 WebBrowser/blockedSite.js create mode 100644 WebBrowser/error-pages.css diff --git a/WebBrowser/Program.cs b/WebBrowser/Program.cs index a4e41af..91cda54 100644 --- a/WebBrowser/Program.cs +++ b/WebBrowser/Program.cs @@ -9,15 +9,22 @@ using Google.Apis.Safebrowsing.v4.Data; using Google.Apis.Services; using System.Collections.Generic; using System.Threading.Tasks; - +using System.Linq.Expressions; namespace XeroBrowser { public static class Program { - public static async Task IsUrlUnsafe(string url, string apiKey) + //safebrowsing integration + /* public static async Task IsUrlUnsafe(string url, string apiKey) { + // ignore any file stored locally + if (url.StartsWith("file://")) + { + return false; + } + var safeBrowsingService = new SafebrowsingService(new BaseClientService.Initializer { ApiKey = "AIzaSyCQV - s52iNah - il6T5iFuqo6M_JzcLyaxs", @@ -43,10 +50,12 @@ namespace XeroBrowser }; var response = await safeBrowsingService.ThreatMatches.Find(request).ExecuteAsync(); - + try { } + catch(System.Net.Http.HttpRequestException) { } + return response != null && response.Matches != null && response.Matches.Count > 0; } - + */ public static AppContainer Container; private static TitleBarTabsApplicationContext _applicationContext; diff --git a/WebBrowser/Xero Browser.csproj b/WebBrowser/Xero Browser.csproj index f91d73f..dc35a1a 100644 --- a/WebBrowser/Xero Browser.csproj +++ b/WebBrowser/Xero Browser.csproj @@ -356,6 +356,7 @@ + Always diff --git a/WebBrowser/blocked.png b/WebBrowser/blocked.png new file mode 100644 index 0000000000000000000000000000000000000000..efe3995319d7fe49f77d77898551fee404a004ce GIT binary patch literal 113133 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 IlQIkaA6^gGK>z>% literal 0 HcmV?d00001 diff --git a/WebBrowser/blocked.svg b/WebBrowser/blocked.svg new file mode 100644 index 0000000..e2a9a01 --- /dev/null +++ b/WebBrowser/blocked.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/WebBrowser/blockedSite.css b/WebBrowser/blockedSite.css new file mode 100644 index 0000000..424a48d --- /dev/null +++ b/WebBrowser/blockedSite.css @@ -0,0 +1,72 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + + @import url("chrome://global/skin/error-pages.css"); + + @media not (prefers-contrast) { + :root { + --in-content-page-background: #d30012; + --in-content-page-color: white; + --in-content-text-color: white; + --in-content-primary-button-text-color: black; + --in-content-button-background: transparent; + --in-content-button-background-hover: #5a0002; + --in-content-button-background-active: #3e0200; + --in-content-primary-button-background: white; + --in-content-primary-button-background-hover: rgba(255, 255, 255, 0.8); + --in-content-primary-button-background-active: rgba(255, 255, 255, 0.7); + } + } + + .title { + background-image: url("blocked.svg"); + } + + .button-container button { + border: 1px solid white; + margin-inline-end: 0; + margin-top: 1.5em; + } + + #advisory_provider { + text-decoration: underline; + } + + #errorDescriptionContainer { + position: absolute; + margin: 48px auto; + } + + .error-description { + min-width: var(--in-content-container-min-width); + max-width: var(--in-content-container-max-width); + color: black; + background-color: white; + } + + .error-description > p:first-child { + padding: 3.5em 3.5em 1em; + } + + .error-description > p:last-child { + padding: 0 3.5em 3.5em; + } + + .error-description #ignore_warning_link, + .error-description a:is(:link, :visited) { + cursor: pointer; + text-decoration: underline; + color: black; + } + + a:not(:link) { + color: black; + text-decoration: none; + cursor: auto; + } + + .sitename { + font-weight: bold; + } + \ No newline at end of file diff --git a/WebBrowser/blockedSite.js b/WebBrowser/blockedSite.js new file mode 100644 index 0000000..dd2aa91 --- /dev/null +++ b/WebBrowser/blockedSite.js @@ -0,0 +1,168 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this file, + * You can obtain one at http://mozilla.org/MPL/2.0/. */ + +// Error url MUST be formatted like this: +// about:blocked?e=error_code&u=url(&o=1)? +// (o=1 when user overrides are allowed) + +// Note that this file uses document.documentURI to get +// the URL (with the format from above). This is because +// document.location.href gets the current URI off the docshell, +// which is the URL displayed in the location bar, i.e. +// the URI that the user attempted to load. + +function getErrorCode() { + var url = document.documentURI; + var error = url.search(/e\=/); + var duffUrl = url.search(/\&u\=/); + return decodeURIComponent(url.slice(error + 2, duffUrl)); +} + +function getURL() { + var url = document.documentURI; + var match = url.match(/&u=([^&]+)&/); + + // match == null if not found; if so, return an empty string + // instead of what would turn out to be portions of the URI + if (!match) { + return ""; + } + + url = decodeURIComponent(match[1]); + + // If this is a view-source page, then get then real URI of the page + if (url.startsWith("view-source:")) { + url = url.slice(12); + } + return url; +} + +/** + * Check whether this warning page is overridable or not, in which case + * the "ignore the risk" suggestion in the error description + * should not be shown. + */ +function getOverride() { + var url = document.documentURI; + var match = url.match(/&o=1&/); + return !!match; +} + +/** + * Attempt to get the hostname via document.location. Fail back + * to getURL so that we always return something meaningful. + */ +function getHostString() { + try { + return document.location.hostname; + } catch (e) { + return getURL(); + } +} + +function onClickSeeDetails() { + let details = document.getElementById("errorDescriptionContainer"); + details.hidden = !details.hidden; +} + +function initPage() { + var error = ""; + switch (getErrorCode()) { + case "malwareBlocked": + error = "malware"; + break; + case "deceptiveBlocked": + error = "phishing"; + break; + case "unwantedBlocked": + error = "unwanted"; + break; + case "harmfulBlocked": + error = "harmful"; + break; + default: + return; + } + + // Set page contents depending on type of blocked page + // Prepare the title and short description text + let titleText = document.getElementById("errorTitleText"); + document.l10n.setAttributes( + titleText, + "safeb-blocked-" + error + "-page-title" + ); + let shortDesc = document.getElementById("errorShortDescText"); + document.l10n.setAttributes( + shortDesc, + "safeb-blocked-" + error + "-page-short-desc" + ); + + // Prepare the inner description, ensuring any redundant inner elements are removed. + let innerDesc = document.getElementById("errorInnerDescription"); + let innerDescL10nID = "safeb-blocked-" + error + "-page-error-desc-"; + if (!getOverride()) { + innerDescL10nID += "no-override"; + document.getElementById("ignore_warning_link").remove(); + } else { + innerDescL10nID += "override"; + } + if (error == "unwanted" || error == "harmful") { + document.getElementById("report_detection").remove(); + } + + // Add the inner description: + // Map specific elements to a different message ID, to allow updates to + // existing labels + let descriptionMapping = { + malware: innerDescL10nID + "-sumo", + }; + document.l10n.setAttributes( + innerDesc, + descriptionMapping[error] || innerDescL10nID, + { + sitename: getHostString(), + } + ); + + // Add the learn more content: + // Map specific elements to a different message ID, to allow updates to + // existing labels + let stringMapping = { + malware: "safeb-blocked-malware-page-learn-more-sumo", + }; + + let learnMore = document.getElementById("learn_more"); + document.l10n.setAttributes( + learnMore, + stringMapping[error] || `safeb-blocked-${error}-page-learn-more` + ); + + // Set sitename to bold by adding class + let errorSitename = document.getElementById("error_desc_sitename"); + errorSitename.setAttribute("class", "sitename"); + + let titleEl = document.createElement("title"); + document.l10n.setAttributes( + titleEl, + "safeb-blocked-" + error + "-page-title" + ); + document.head.appendChild(titleEl); + + // Inform the test harness that we're done loading the page. + var event = new CustomEvent("AboutBlockedLoaded", { + bubbles: true, + detail: { + url: this.getURL(), + err: error, + }, + }); + document.dispatchEvent(event); +} + +let seeDetailsButton = document.getElementById("seeDetailsButton"); +seeDetailsButton.addEventListener("click", onClickSeeDetails); +// Note: It is important to run the script this way, instead of using +// an onload handler. This is because error pages are loaded as +// LOAD_BACKGROUND, which means that onload handlers will not be executed. +initPage(); diff --git a/WebBrowser/error-pages.css b/WebBrowser/error-pages.css new file mode 100644 index 0000000..da89569 --- /dev/null +++ b/WebBrowser/error-pages.css @@ -0,0 +1,87 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + + @import url("chrome://global/skin/in-content/info-pages.css"); + + body { + background-size: 64px 32px; + background-repeat: repeat-x; + padding: 0; + /* info-pages.css sets a minimum width of 13em to the content + * container. If we don't set a min-width here, the content + * gets clipped in iframes with small width. We don't accomodate + * any padding to prioritize real estate in the small viewport. */ + min-width: 13em; + } + + .button-container { + display: flex; + flex-flow: row wrap; + justify-content: end; + } + + .button-spacer { + flex: 1; + } + + @media only screen and (max-width: 959px) { + body { + padding: 0 75px; + } + + .title { + background-image: none !important; + padding-inline-start: 0; + margin-inline-start: 0; + } + + .title-text { + padding-top: 0; + } + } + + @media only screen and (max-width: 640px) { + .title-text { + padding-bottom: 0; + border-bottom: none; + } + } + + @media only screen and (max-width: 480px) { + body { + padding: 0 38px; + } + + .container { + min-width: 0; + } + + .button-container button { + width: 100%; + margin: 0.66em 0 0; + } + + .title-text { + font-size: 26px; + } + } + + @media only screen and (max-width: 320px) { + body { + padding: 0 12px; + } + } + + @media only screen and (max-height: 480px) { + body { + /* Note: if you change the top padding, also update the image positioning + * media query in aboutNetError.css for the certificate error case. */ + padding-top: 38px; + /* We get rid of bottom padding for width < 640px, but + * for height < 480px a bit of space between the content + * and the viewport edge is nice. */ + padding-bottom: 38px; + } + } + \ No newline at end of file diff --git a/WebBrowser/frmBrowser.cs b/WebBrowser/frmBrowser.cs index 1be1229..87c458b 100644 --- a/WebBrowser/frmBrowser.cs +++ b/WebBrowser/frmBrowser.cs @@ -21,6 +21,7 @@ namespace XeroBrowser { Uri _fileUri; Uri _fileUri2; + Uri _safebrowsingblockpage; public FrmBrowser() { InitializeComponent(); @@ -37,6 +38,10 @@ namespace XeroBrowser _fileUri2 = new Uri(filePath2); string fileUrl2 = _fileUri2.AbsoluteUri; + string safebrowsingblockpath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "safebrowsingblock.html"); + _safebrowsingblockpage = new Uri(safebrowsingblockpath); + string safebrowsingblockpage = _safebrowsingblockpage.AbsoluteUri; + chromiumWebBrowser1.Load(fileUrl); txtSearchOrUrl.Text = ""; txtSearchOrUrl.IconRight = null; @@ -71,20 +76,24 @@ namespace XeroBrowser private bool _isBlocked; private void chromiumWebBrowser1_LoadingStateChanged(object sender, LoadingStateChangedEventArgs e) { - //chromiumWebBrowser1.LoadingStateChanged += async (s, args) => - // { - // if (args.IsLoading) - // { - // var isUnsafe = await Program.IsUrlUnsafe(args.Browser.MainFrame.Url, "AIzaSyCQV-s52iNah-il6T5iFuqo6M_JzcLyaxs"); - // if (isUnsafe) - // { - // chromiumWebBrowser1.Stop(); // cancel the navigation - // _isBlocked = true; - // chromiumWebBrowser1.LoadHtml(""); - // break; - // } - // } - // }; + chromiumWebBrowser1.LoadingStateChanged += async (s, args) => + { + /* if (args.IsLoading) + { + var isUnsafe = await Program.IsUrlUnsafe(args.Browser.MainFrame.Url, "AIzaSyCQV-s52iNah-il6T5iFuqo6M_JzcLyaxs"); + if (isUnsafe) + { + chromiumWebBrowser1.Stop(); // cancel the navigation + _isBlocked = true; + string filePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "safebrowsingblock.html"); + _safebrowsingblockpage = new Uri(filePath); + string fileUrl = _safebrowsingblockpage.AbsoluteUri; + chromiumWebBrowser1.Load(fileUrl); ; + + } + } + */ + }; if (e.IsLoading) { diff --git a/WebBrowser/safebrowsingblock.html b/WebBrowser/safebrowsingblock.html index e69de29..ff91635 100644 --- a/WebBrowser/safebrowsingblock.html +++ b/WebBrowser/safebrowsingblock.html @@ -0,0 +1,35 @@ + + + + + + + + Visiting this website may harm your computer + +