阻擋廣告與被追蹤

目前網路上,充滿許多廣告,從網頁(Web)到行動裝置的應用程式(App),可能當你上了某個購物或商店的網站瀏覽商品後,再進入一些放置廣告的網站瀏覽時,會出現剛剛瀏覽過或是同類型的產品。除了很討厭見到廣告內容外,在行動裝置上更是會使用到可觀的行動網路流量,更重要的是,讓廣告商們能夠追蹤自己的瀏覽記錄與喜好等。Chrome 在今年(2018 年)二月加入了廣告過濾(AD Filtering),Google 在 Chrome 瀏覽器中,加入廣告過濾主要並不是想要保護使用者的隱私,因為使用者看不到廣告,與使用者不被追蹤是兩回事,沒看到廣告不表示你沒被追蹤。

下面會分享,自己目前或使用過的阻擋廣告、追蹤的方式與軟體(皆是開源的),主要分成瀏覽器、行動裝置端與其他。

瀏覽器端

在瀏覽器上瀏覽網頁,是透過 JavaScript 載入執行的程式,來顯示廣告或追蹤你點擊、瀏覽過的網頁,常見防止廣告與第三方追蹤的方式是阻擋特定的 JavaScript 檔案或特定的域名,來避免瀏覽器執行這些 JavaScript,或向特定域名送出 HTTP/HTTPS 請求。

uBlock Origin

uBlock logouBlock Origin 廣泛來說,並不是完全來阻擋廣告與被追蹤的工具,它提供了多種阻擋規則,包含了請求類型、主機名稱、網址、HTML DOM 等,也能利用正規表示式(regular expression)等來撰寫阻擋規則。(注意:uBlock Origin 與 uBlock 是不同的,可以從 logo 圖案來區分)

uBlock Origin 專案原始碼:https://github.com/gorhill/uBlock

如果你是 Firefox 瀏覽器使用者,請從 Firefox Add-on 安裝;如果你是 Chromium/Chrome 瀏覽器使用者請從 Chrome 線上應用程式商店安裝。

uBlock Origin 支援許多瀏覽器,像是 Firefox、Chrome、Safari 等,只要在瀏覽器內,安裝 uBlock Origin 擴充套件後就能使用,uBlock Origin 中也包含了許多的阻擋清單,讓你依照自己的需求,如阻擋的類型,或依照國家內常見的廣告與追蹤來阻擋。

Advanced uBlock
安裝完 uBlock Origin 後,也能查看到目前已經阻擋的連線請求及所有的連線請求有哪些。
uBlock logo 取自 Raymond Hill (@gorhill) https://github.com/gorhill/uBlock/blob/master/doc/img/ublock-16.svg,以公眾領域(CC0)釋出

繼續閱讀 “阻擋廣告與被追蹤”

阻擋廣告與被追蹤

找出網站中的混合內容 (mixed content)

Google 在 2014 年宣布 HTTPS 將會是搜尋排名的參考之一(相關連結:Official Google Webmaster Central Blog: HTTPS as a ranking signal),到了最近也宣布 Chrome 到了 2017 年 01 月的 Chrome 56 中(相關連結:Google Online Security Blog: Moving towards a more secure web),將會把不是採用 HTTPS 的輸入密碼或信用卡卡號的網站標示為 Not secure(動作超大),最後,會連不是 HTTPS 的網站都標成 Not secure…

blog-image-1
圖片來源:Google Online Security Blog

在把網站從 HTTP 轉到 HTTPS,除了需要調整網頁伺服器上的設定、申請憑證,及把來自 HTTP 的連線都轉到 HTTPS 之外,更費時間的是要確保沒有混合內容 (mixed content) 的情形。

什麼是 mixed content

來看看 Mozilla 的定義:

如果以 HTTPS 傳輸的頁面含有以 HTTP 傳輸的明文內容,則這個連線就只有部分加密:也就是說,未加密的內容就有可能被竊聽或是被中間人修改,連線也就不安全了。當網站發生這樣的情況時,我們說這個頁面含有混和內容

— 取自《混和內容 – Security | MDN》

簡單來說,如果 HTTPS 的網頁中有包含了 HTTP 的連線,就是網頁中有 mixed content。

例如,連線到 https://fmbase.tw/secure-page/,網頁伺服器回應 HTML 給瀏覽器去解析,當有像 <img src=””> 的標籤,需要再發出 HTTP(S) request 來取得圖片,如果當圖片是 HTTP 資源的時候,這個網頁就有 mixed content。

繼續閱讀 “找出網站中的混合內容 (mixed content)”

找出網站中的混合內容 (mixed content)

ASUS 路由器的洞

asus

在網路上看到國外有人發現到ASUS 家用路由器的洞,剛好我也是用ASUS,檢查一下發現真的有這個洞…,詳細可以參考此網站

主要有兩個洞,分別是XSS 跟 Authentication bypass,都是發生在error_page.htm 這個網頁,瀏覽此頁面是不經過身分驗證

  1. XSS 的是透過error_page.htm?%27%2balert(%27QQ%27)%2b%27
  2. Authentication bypass 在檢視error_page.htm 的原始碼會發現有一行的程式如下:

回報的人說明影響到的機型有

  1. ASUS RT-N10U
  2. ASUS RT-N56U
  3. ASUS DSL-N55U
  4. ASUS RT-AC66U
  5. ASUS RT-N15U
  6. ASUS RT-N53

另外,N55U與 AC66U 沒有Authentication bypass 的洞。

不過,現在使用是RT-N12D1 在官網上的Firmware 更新中也有,所以,快去檢查路由器的firmware 是否有釋出更新

 

資料來源:https://sintonen.fi/advisories/asus-router-auth-bypass.txt

ASUS 路由器的洞

SSH 安全設定的大小事

OpenSSH_logo
圖片取自Wikipedia

 

前幾天幫朋友弄主機,看到 /etc/hosts 被加入許多筆127.0.0.1 對應到不同的domain name,接著看登入紀錄發現,只留下當天下午之後的紀錄,其他的都不見了‵,個人的主機通常不會把log 丟到syslog server 上,系統上的帳號也被新增一個帳號,UID 還是0…,看來是被黑了…,最後發現,他沒把root 帳號SSH 連線的設定關掉,密碼也太過簡單。

繼續閱讀 “SSH 安全設定的大小事”

SSH 安全設定的大小事

FreeBSD擷取封包

好久沒發文了,最近好多問題,院上的DNS Server查詢有問題,檢查過設定,看過log也沒發現到什麼問題。

最後,因為又發生了一些事情,好像是網路方面的問題,就試著檢查封包看看。

在FreeBSD檢查流經網卡封包的工具為TCPDump,可以擷取封包,看是要在FreeBSD上看或者是要將擷取到的資訊儲存成檔案,再利用WireShark來解析也可以。

擷取通過bce0網卡的所有封包:

擷取通過的HTTP封包

除了FTP、HTTP、SMTP、SSH以外的封包全部擷取

參數說明:
 -i:指令的網卡代號
 -s:抓取的封包長度最大值,值為0代表沒限制
 -w:輸出的檔案名稱

FreeBSD擷取封包

FTP的運作方式

何謂FTP?
FTP(File Transfer Protocol),是「檔案傳輸協定」,透過TCP[註1]封包協定連線方式,可以將檔案在FTP Server 及 Client中進行傳輸,只要Client擁有適當地權限就可以上傳或下載資料到FTP Server上。
運作方式 FTP不同於其他協定(如:HTTP、Telnet、SSH等),FTP有兩個連線。
一個是「命令傳輸連線」,命令連線是負責把Client要求傳送給FTP Server,要先建立命令傳輸連線後,才能讓FTP Server能執行Client的動作。 另一個則是「資料傳輸連線」,當Client建立命令連線後,利用命令連線告訴FTP Server所要得服務時,例如:Client要下載的資料,FTP Server就會將資料傳送到Client,當傳送完畢後,資料傳輸連線就中斷,但命令傳輸連線還是保持著。
繼續閱讀 “FTP的運作方式”

FTP的運作方式