Security | The Will Will Web

The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

使用 GnuPG 確保傳輸重要檔案或文件的過程能確保機密性與完整性

當我們要進行機密文件傳輸時,可能會面臨許多不同的傳輸方式,但是過程中必須確保資訊安全,因此你就會需要考量到許多因素。這篇文章我打算分享如何利用 GPG 工具對檔案進行簽章加密,檔案無論透過任何方式傳送給對方,都只有明確指定的對象可以開啟檔案,藉此達到資訊安全的中的機密性(Confidentiality)與完整性(Integrity)要求。

... 繼續閱讀 ...

如何在現有 ASP.NET Core 網站加入 Azure AD 的 OpenId Connect 登入

我們公司採用 Microsoft 365 辦公協作環境,這也意味著背後一定使用了 Azure AD 目錄服務,因此我們可以直接拿 Azure AD 作為公司的 OAuth 2.0 + OpenId Connect (OIDC) 認證與授權平台,因此開發公司內部應用程式就變的非常容易。這篇文章我將說明要將一個 ASP.NET Core 網站加入 Azure AD 的身份驗證流程,以及使用時的注意事項。

... 繼續閱讀 ...

如何將一個 ASP.NET Core 網站快速加入 LINE Login 功能 (OpenID Connect)

前幾天原本想用 ASP.NET Core 寫一個最簡單的 LINE Login 範例程式出來,結果想不到這麼簡單的功能,卡關了兩天才找出解決之道。如果單純的透過 OAuth 2.0 授權流程來取得 Access Token 與 ID Token 其實還蠻簡單的。但是若希望可以做到 OpenID Connect 流程中自動透過 JWK (RFC 7517: JSON Web Key) 來驗證 Token 的有效性,這時可以直接使用 ASP.NET Core 內建的 Microsoft.AspNetCore.Authentication.OpenIdConnect 套件來完成。不過當方便的套件遇到特殊的實作時,那麼就是一場災難啦。這篇文章我打算來說說這次的踩雷之旅!

... 繼續閱讀 ...

資訊安全筆記:盤點 Azure 訂用帳戶與角色指派的方法

在 Azure 所有 使用者 (User) 與 服務 (Service) 都代表著一個 主體 (Principal),而 Azure 的 RBAC (以角色為主的存取控制) 主要就是針對 主體 (Principal) 來進行角色指派 (授權),因此我們可以對 使用者主體 (User Principal) 或 服務主體 (Service Principal) 設定在不同資源所擁有的角色。本篇文章我打算來分享幾個方法,教你如何在特定 訂用帳戶 (Subscription) 下查出有哪些主體被設定了哪些角色,以及特定主體已經被授權到了哪些訂用帳戶哪些資源哪些角色,藉此用來盤點是否有不當授權的狀況。

... 繼續閱讀 ...

如何在 Windows 架設高安全性的 SFTP (SSH File Transfer Protocol) 伺服器

延續的我前一天的 如何在 Windows 正確的安裝與設定 OpenSSH Server 服務 文章,在 Windows 平台架設 OpenSSH Server 搭配 SFTP 就能進行安全的檔案傳輸,防火牆也只需要開啟 Port 22 而已,清楚明瞭,系統配置預設也非常安全。這篇文章我就來分享如何對 SFTP 進行安全的設定,讓你在遠端檔案傳輸時能夠更加安全。

... 繼續閱讀 ...

如何透過 PowerShell 快速建立 Windows 內建 VPN 連線並自動記憶密碼連線

有鑑於近日台灣 COVID-19 疫情 相當嚴峻,政府也在前幾日宣布全台疫情警戒升第三級,我們公司也在 2021/5/17 開始全員在家上班,以致於使用 VPN 的同仁暴增,進而也遇到許多連線問題。本篇文章我要來分享幾個快速建立 VPN 的 PowerShell 命令,幫助大家在不瞭解 VPN 背景知識的情況下,也能快速且正確的設定好 VPN 連線。

... 繼續閱讀 ...

使用 OpenSSL 與 cURL 檢查網站伺服器支援哪幾種 Cipher Suites

當我們從用戶端透過 TLS 協定連接伺服器時,用戶端會準備一組 Cipher Suites 清單給伺服器端,伺服器端必須選用一個強度最高的 Cipher 加密演算法回應,之後才會進行金鑰交換,並開始使用加密連線,確保網路安全。本篇文章將分享如何透過 OpenSSL 查詢有哪些 Cipher Suites 可用,並示範如何透過 cURL 指定特定 Cipher 進行連線與檢查伺服器是否支援特定 Cipher Suite 加密演算法清單。

... 繼續閱讀 ...

如何使用 Certbot 建立免費的 TLS/SSL 網域憑證並自動產生 PFX 憑證

我之前有寫過一篇 如何使用 Certbot 命令列工具建立免費的 TLS/SSL 頂層網域憑證 文章,當時的情境是我的域名是 頂層網域 (naked domains)(Top-Level Domain)(TLD),必須用「手動」方式申請。今天這篇文章,我要示範如何「全自動」申請與更新憑證,並自動產生 Kestrel 所需的 *.pfx (PKCS#12) 憑證。

... 繼續閱讀 ...

如何使用 Certbot 命令列工具建立免費的 TLS/SSL 頂層網域憑證

許多有在玩 Angular 前端框架的人都知道,目前的 Angular 官網的正體中文版(https://angular.tw)都是由我負責維護。該網站我目前架設於 Azure App Service 上,我原本想用 Azure 上目前免費的 App Service 受控憑證,可惜他並不支援「裸網域」(naked domains),因此我就必須要改申請免費的 Let's Encrypt 網站伺服器憑證。

... 繼續閱讀 ...

如何設定 SQL Server 2008 接受 SSL 加密連接 (需設定憑證)

最近在研究如何讓 SQL Server 用戶端程式能夠連接到 SQL Server 2008 時能夠採用 SSL 加密連線,卻發現網路上很難找資料,找到的大多是 SQL Server 2000 或 2005 的說明,而 SQL Server 2008 的說明卻經常不夠完整,在 TechNet 網站也非常難找到正式的教學文件告知怎樣設定,研究了兩天後終於研究出正確設定的標準作業流程,真是太開心了!^_^

... 繼續閱讀 ...

個資保護、Google Hacking 與 robots.txt 的關係與設定技巧

我想大部分人都應該知道 robots.txt 檔案的功用 (如果不知道可參考我之前的文章),因為 robots.txt 是給網頁爬蟲機器人 (Web Crawler) 看的,搜尋引擎要來抓網站網頁進行索引前,都會「禮貌性」的先抓取 robots.txt 檔案回去分析,若特定 URL 真的允許抓網頁回去才會繼續下載網頁,不過看這個檔案的 人類就不一定這麼有禮貌,讓駭客知道了你「不想被抓的目錄」後,反而讓駭客產生興趣,進而企圖攻擊這些你不想被知道的網頁路徑,所以選擇不將這些路徑放到 robots.txt 定義檔裡,然而,這觀念是正確的嗎?No!!! 請繼續看下去…

... 繼續閱讀 ...

如何打造符合個資法規的網站系統 — 以 ASP.NET 為例

為因應個資法的來臨,筆者去年曾投稿資安人電子雜誌關於「個人資料保護法」的文章,主要是站在開發人員的角度進行思考如何打造符合個資法規的網站系統,文章中結合了我近幾年對個資法的瞭解與網站實務開發經驗,明確告知開發人員如何做好自己該做的事,千要不要認為個資法只是一個資安政策,而是你我必須認真看待與面對的日常工作。本文已於今年一月刊載於資安人電子雜誌82期,由於資安人電子雜誌是付費版的電子雜誌,礙於許多開發人員所處公司可能沒有訂閱該雜誌,今日得到資安人電子雜誌的同意,允許我將此文全文轉載於我的部落格,分享給開發人員。如讀者對資安相關議題有興趣,建議也可考慮加入資安人電子雜誌的付費會員,即時獲得最新的資安訊息。

... 繼續閱讀 ...