From 97b88659682ef889f1685a37dac0e9731f6408c8 Mon Sep 17 00:00:00 2001 From: danigrant Date: Tue, 7 Oct 2014 03:22:06 -0400 Subject: [PATCH 1/5] chrome extension added to SHA repo --- README.md | 4 ++++ chrome-extension/app.js | 39 +++++++++++++++++++++++++++++++++ chrome-extension/background.js | 27 +++++++++++++++++++++++ chrome-extension/icon.png | Bin 0 -> 2620 bytes chrome-extension/manifest.json | 27 +++++++++++++++++++++++ 5 files changed, 97 insertions(+) create mode 100644 chrome-extension/app.js create mode 100644 chrome-extension/background.js create mode 100644 chrome-extension/icon.png create mode 100644 chrome-extension/manifest.json diff --git a/README.md b/README.md index 4e61f7b..a856a7b 100644 --- a/README.md +++ b/README.md @@ -87,6 +87,10 @@ $ ./bin/shaaaaaaaaaaaaa bad-domain } ``` + +##Shaaaaaaaaaaaaa Chrome Extension +Version one. [Available on Chrome Web Store](https://chrome.google.com/webstore/detail/check-ssl/adlogjmkkcancjpododcnjndnmkooghi) for download. + ## Author diff --git a/chrome-extension/app.js b/chrome-extension/app.js new file mode 100644 index 0000000..d7088d1 --- /dev/null +++ b/chrome-extension/app.js @@ -0,0 +1,39 @@ +function formatURL() { + var currURL = window.location.host; + var url = currURL; + // remove 'www' + if (currURL.indexOf("www") >= 0){ + url = currURL.split("www.")[1]; + } + // remove any path after web address + if(window.location.pathname !== "/") { + var pathname = window.location.pathname; + url = url.split(pathname)[0]; + } + return url; +} + +function sendRequest(url) { + var xhr = new XMLHttpRequest(); + xhr.open("GET", ("https://shaaaaaaaaaaaaa.com/api/check/" + url), true); + xhr.onreadystatechange = function() { + if (xhr.readyState == 4) { + var resp = JSON.parse(xhr.responseText); + var diagnosis = resp.diagnosis; + switch (diagnosis) { + case "good": + chrome.runtime.sendMessage({diagnosis: "good"}); + break; + case "almost": + chrome.runtime.sendMessage({diagnosis: "almost"}); + break; + case "bad": + chrome.runtime.sendMessage({diagnosis: "bad"}); + break; + } + } + } + xhr.send(); +} + +sendRequest(formatURL()); diff --git a/chrome-extension/background.js b/chrome-extension/background.js new file mode 100644 index 0000000..b3db9e9 --- /dev/null +++ b/chrome-extension/background.js @@ -0,0 +1,27 @@ +//listens for tab change +chrome.tabs.onActivated.addListener(function() { + chrome.browserAction.setBadgeBackgroundColor({color: [255,0,0,255]}); + chrome.tabs.executeScript({file: "app.js"}, function() { + //on error - log error message and set badge to transparent + if (chrome.runtime.lastError) { + chrome.browserAction.setBadgeBackgroundColor({color: [0,0,0,0]}); + chrome.browserAction.setBadgeText({text: ""}); + console.error(chrome.runtime.lastError.message); + } + }); +}); + + +chrome.runtime.onMessage.addListener( + function(request, sender) { + //log diagnosis to badge + if (request.diagnosis == "bad") { + chrome.browserAction.setBadgeText({text: "bad"}); + } + if (request.diagnosis == "almost") { + chrome.browserAction.setBadgeText({text: "almost"}); + } + if (request.diagnosis == "good") { + chrome.browserAction.setBadgeText({text: "good"}); + } +}); \ No newline at end of file diff --git a/chrome-extension/icon.png b/chrome-extension/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..bd1dd9fa100d08ba0660c13eab00bcc77bdda11a GIT binary patch literal 2620 zcmV-C3d8k@P)()(1l5Hg0sl;kDMB^U-;zWWPfquDw#&-l#^Qjg%j97yH zKOs$6HR7?k5#(Q>AqQ}3#Gx7F*Zm~>5go9g@fCqs0nL90fCf6CYXk@&>L8%W`-u!F zj0E67tUp;uhz_#y|$w0}w!Dr5g0Q28icVr937w6@sdj1d1(0&eFInMiwVF zi!f5?J9KaWT3?XnLsH@dy}TkfND~-n1Xzfv35l&SiHQbc<8T5H7hq8as_zYu_#c1{ z5G2b&QWFlYa+johNUR}H$K9tWTTqxyKy9+~Xkv*#4=lhJhYmQBc|ES;9SZ!>;+3e@ z6tN}w1N0^h0kDCA-T)wgsL_lfx=tfhQ@kg_jP=y&CJP`e8;Fb>P%8Y0XT;MAWnNsVWm{XC<)t`?Y0`pLX1iK1_JjU6TVN;fpAcH=wl)}K$rm7046A%pkxBr06GEc1jzo(h5;;opbBDNfIdaMJ!2vm_ZTE zTLouIhFFNEi2A2;Zi~E*UA(PtVyP%bI=3cbOOy3EL{iXmAkhux$AiJ$+xg>GdQ#_c z!sGGy?piEEM~lAlZO?f}n9SbH-S`WV+ zC4#pTFs?7%`&W&$WHG5SjPC<_4-D+m`DP< z*0z?O2|K@WYgwK~j|`po7;ZD9~w(L4O=cs8;Es=I6^rIv; zw#;jy?*=F1+6;b1RdtM$2pq(1;uhyUDmwio4rNK(Xx7F=AxH&2So)2>GOlNTDNqVh zg>gakjchSq2-!oXn1sHqaH= zLV*!CljHg$ZMz>qt~d+56Pyd3GprZ3U5LKJ6h$e)K&GO%1Jp^wSrSnbQ4T*%bE+?BW1HTp&5{KxRb<3w%K50 z9Bd_Z)rdFpN;PB(5Pe5rUNmlRs4#(2@}}YbPJ^n(!xI|hmA6tz#oHZA$uoRrQL5I+ zE2rlyMSE}0h3i6nX+i}G`TzS5vs%NG;^aeqkBKN483pyiO+`GoMsFZ}^K`9TWE#ADKcuxloy+4RR2EvqJ;lGdi(1tsPNWLYQemNKmK76-*y z$=IU&*!LKxi_>D)6cKPAoXLkRj)RQsf|P=|f6ND6WO#YrSRe`d@XadX@YCA@70Az_ zAa2ck+$*#V6Hj?7Qss?1ne#l~%PWnd1-NkF1wCOn_}B9K3)&e*=VRfArv@6-eHJ4| ej2JOO2mb+5;dhexc;6@h0000 Date: Tue, 7 Oct 2014 03:23:40 -0400 Subject: [PATCH 2/5] link to icon --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index a856a7b..d532756 100644 --- a/README.md +++ b/README.md @@ -87,7 +87,8 @@ $ ./bin/shaaaaaaaaaaaaa bad-domain } ``` - + + ##Shaaaaaaaaaaaaa Chrome Extension Version one. [Available on Chrome Web Store](https://chrome.google.com/webstore/detail/check-ssl/adlogjmkkcancjpododcnjndnmkooghi) for download. From b2ccc1757efb401d2173fbc4641ea4fc568b8887 Mon Sep 17 00:00:00 2001 From: danigrant Date: Tue, 7 Oct 2014 03:24:23 -0400 Subject: [PATCH 3/5] moved icon to top --- README.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/README.md b/README.md index d532756..990d7cd 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,4 @@ + ## SHAAAAAAAAAAAAA This repository contains the code for **[shaaaaaaaaaaaaa.com](https://shaaaaaaaaaaaaa.com)**, a tool to check whether your site's certificate is signed using **SHA-1** (common, bad) or **SHA-2** (rare, good). @@ -87,12 +88,9 @@ $ ./bin/shaaaaaaaaaaaaa bad-domain } ``` - - ##Shaaaaaaaaaaaaa Chrome Extension Version one. [Available on Chrome Web Store](https://chrome.google.com/webstore/detail/check-ssl/adlogjmkkcancjpododcnjndnmkooghi) for download. - ## Author This is a tiny tool by [Eric Mill](https://twitter.com/konklone). Released under an [MIT License](LICENSE). From 7e54053846b780a9ea5103e164ff97b82af4a3b5 Mon Sep 17 00:00:00 2001 From: danigrant Date: Tue, 7 Oct 2014 03:24:57 -0400 Subject: [PATCH 4/5] moved icon to top --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 990d7cd..2836b22 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,3 @@ - ## SHAAAAAAAAAAAAA This repository contains the code for **[shaaaaaaaaaaaaa.com](https://shaaaaaaaaaaaaa.com)**, a tool to check whether your site's certificate is signed using **SHA-1** (common, bad) or **SHA-2** (rare, good). @@ -88,6 +87,8 @@ $ ./bin/shaaaaaaaaaaaaa bad-domain } ``` + + ##Shaaaaaaaaaaaaa Chrome Extension Version one. [Available on Chrome Web Store](https://chrome.google.com/webstore/detail/check-ssl/adlogjmkkcancjpododcnjndnmkooghi) for download. From 03878d6b7b800df5e8cf7e4806d654e050619860 Mon Sep 17 00:00:00 2001 From: danigrant Date: Tue, 7 Oct 2014 03:27:05 -0400 Subject: [PATCH 5/5] moved icon --- README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/README.md b/README.md index 2836b22..f077492 100644 --- a/README.md +++ b/README.md @@ -87,8 +87,6 @@ $ ./bin/shaaaaaaaaaaaaa bad-domain } ``` - - ##Shaaaaaaaaaaaaa Chrome Extension Version one. [Available on Chrome Web Store](https://chrome.google.com/webstore/detail/check-ssl/adlogjmkkcancjpododcnjndnmkooghi) for download.