Pentest Tools Survey
Mobile Application Security Penetration Testing Based on OWASP
VAPTAi: A Threat Model for Vulnerability Assessment and Pentesting of Android and iOS Mobile Banking Apps
VAPTAi: A Threat Model for Vulnerability Assessment and Penetration Testing of Android and iOS Mobile Banking Apps
Command Cheat Sheet
Command Cheat Sheet
A MITM Based Penetration Test Efficiency Improvement Approach for Traffic-Encrypted Mobile Apps of Power Industry
A MITM Based Penetration Test Efficiency Improvement Approach for Traffic-Encrypted Mobile Applications of Power Industry
Cross-site Scripting Attacks on Android Hybrid Applications
Cross-site Scripting Attacks on Android Hybrid Applications
What is IDS, IPS, EDR, MDR, NSM, SIEM?
- IDS(Intrusion Detection System, 入侵偵測系統)
簡答: 從名字就可以看的出來,他是針對流入流出的各種封包的偵測系統,也就是獨立於Firewall的旁之,如果他有檢測到封包內有什麼異常的Payload或是pattern,就會跳出告警,但就僅只於此,不會再做更多的操作
詳答: What is IDS(Intrusion Detection Systems)?
入侵偵測系統(Intrusion Detection System,IDS)是用來偵測資訊系統或網路上潛在的惡意破壞活動
- 網路型入侵偵測系統(NIDS):主要是由一個或多個偵測器,加上收集與分析資料的主控臺所組成,可以分析每個通過的網路封包,並與已知的攻擊特徵進行比對,如果符合某項攻擊特徵,系統就會啟動防護機制,例如發簡訊或命令防火牆中斷該連線。
- 主機型入侵偵測系統(HIDS):是從主機系統稽核日誌檔演進而來,必須在主機上安裝代理程式﹙Agent﹚,負責監視主機內部的程序,並監控記錄檔與可疑活動,若有任何系統事件都會被記錄至日誌檔,並與攻擊特徵資料庫比對,判斷主機是否遭到攻擊
- 誘捕型入侵偵測系統(Deception Systems):目的是偵測未經授權的活動,任何進出誘捕系統的封包都會被認定是可疑的。但它卻是受到爭議的產品,有些廠商認為誘捕型系統只適合學術研究,因為它誘導駭客上勾,因此收集的證據無法用來起訴駭客
- IPS(Intrusion Prevention System, 入侵防禦系統) IPS就是要改進上述的問題,他主打的就是偵測到快快的東西就會主動的防禦掉,但這樣還是有一個問題,現今的攻擊手法越來越多種,而且有時候是那種可以包裝成安全落地的形式,必須要在本地端監控才有辦法知道
- EDR(Endpoint Detection and Response, 端點偵測與應對) EDR就是在做這樣的事情,可是有可能會有一個疑問,每個人的主機內不是都有安裝那種傳統的Windows Defenders或是小紅傘那種東西,為什麼還需要有EDR,其實現今的攻擊手法已經有很大的變化,有可能單純看個人的裝置會看不出個所以然,必須要聯合其他的裝置一起做關聯性的比對才會知道目前是不是正在遭受攻擊,所以EDR強大的地方在於他做到各個裝置endpoint端點的串聯,讓資安事件的偵測和防禦可以更嚴謹,這也是中小型企業最需要的資安產品
- MDR(Managed Detection and Response, 受管式偵測與應對) 這東西其實就是一個EDR+SOC的服務衍生的產品,但ddaa說這個東西要做出市場區隔可能還沒有到太創新
-
What is NSM(Network Security Monitors)?
NSM主要目的是偵測、找出入侵者,提高能見度。它建立在「我們一定會被攻擊,而且最終防禦一定會被突破」的思惟上。假設意志堅決的駭客最終打穿我們辛苦建立的防禦,但只要能在入侵者進一步破壞、感染系統前偵測、做出回應,讓入侵者無法達到目的,便能阻擋這波攻擊 NSM不是等接收IDS/IPS等等資安設備觸發警示後才開始收集,而是平時便預先主動收集資料,提供NSM平台審視、分析,強化可見度,主動找出入侵軌跡
-
What is SIEM(Security Information and Event Management)
SIEM的功能和一般日誌管理工具類似,都會將來自不同伺服器和設備的日誌和事件紀錄集中在一個地方 (通常是Log server伺服器本身硬碟或特定的儲存池Storage pool),避免日誌和紀錄隨著機器故障遺失,符合稽核要求,可以進行關鍵字或日期查詢,所以也有人直接用日誌管理工具來進行分析 功能
- 彙整、解讀多項系統設備日誌
- 資料圖形化
- SIEM具備強大的比對Correlation 功能 e.g.帳號登入失敗、創建新帳號、帳號權限提升等等可能是攻擊行為也可能是網管的正常登入,要看一連串的流量或封包資料才能判斷$\to$耗費人力
- 整合其他資安工具或資安服務
What is DevOps, MLOps, CI/CD?
什麼是 DevOps?
:::spoiler
DevOps 簡而言之,就是 Development + Operations ,也就是開發與維運。但大部分的文章都會說是「開發」「測試」「維運」三者的結合。如同下面這張圖想表示的意義一樣,當三者有了交集,即是 DevOps
DevOps 想要達成的目標為何?
從 Patrick Debois 發現的問題與參考葉大一句話囊括 DevOps 的目標一文,可以了解,最大的目標即為速度。「天下武功,唯快不破」,從發現需求到產品上線的時間越短,能得到的回饋與市場也就越大;但快還不夠,還要好,也就是要有品質!如果只有快,而沒有品質,只是更快把 bug 上線,並破壞企業名聲而已。如何兼顧速度與品質,即為 DevOps 的主要目標。 DevOps 到底在做什麼?
為何會出現 DevOps ,相信已經有個感覺了。那它究竟在做些什麼事呢?
有文章會提到用 CALMS 的角度來說明 DevOps 的要領,這是下列五個英文單字的縮寫:
- Culture
- Automation
- Lean
- Measurement
- Sharing
這是了解 DevOps 概念的好方向之一。
什麼是MLOps?-30 Days of MLOps
:::spoiler
用最短的一句話來解釋它的話,MLOps 就是 Machine Learning 的 DevOps 在 Machine Learning 團隊中,除了資料科學家、資料工程師、DevOps 工程師作為固定班底外,協作單位還有產品經理、後端工程師等等。我們要讓所有人可以彼此良好的協作,這需要依賴更好的維運架構。除了最直覺想到的 Model 部署外,常見的挑戰還有例如:訓練 Model、測試與分析 Model、資料的預處理等等。
- CI/CD是什麼?一篇認識CI/CD工具及優勢,將日常瑣事自動化 :::spoiler
What is CI/CD
CI/CD工具也是為了此概念(DevOps)而產生的自動化工具,透過持續整合、持續部署的方式,在開發階段就自動協助開發人員偵測程式碼問題,並部署至伺服器
CI(Continuous Integration)持續整合
持續整合(Continuous Integration,CI)顧名思義,就是當開發人員完成一個階段性的程式碼後就經由自動化工具測試、驗證,協助偵測程式碼問題,並建置出即將部署的版本(Build)
CD(Continuous Deployment)持續部署
持續部署(Continuous Deployment)可以說是CI的下一階段,經過CI測試後所構建的程式碼可以透過CD工具部署至伺服器,減少人工部署的時間。
CI/CD工具1:GitHub
GitHub是眾所皆知的Git Server網站,其CI/CD服務稱為GitHub Action,提供了多項控制API,能夠幫助開發者編排、掌握工作流程,在提交程式碼後自動編譯、測試並部署至伺服器,讓每位開發者都能受惠於平台本身自有的CI/CD功能。
CI/CD工具2:GitLab
GitLab主要的服務是提供git版本控制系統,其CI/CD Pipeline功能簡單又實用,使用者只需要設定於專案根目錄下的「.gitlab-ci.yml」檔,便可以開始驅動各種Pipeline協助您完成自動化測試及部署。目前有提供GitLab CE(社群版)與 GitLab EE(企業版)兩種,使用者可以根據自己的需求選擇適合不同的方案。
CI/CD工具3:Anthos
由Google所推出的Anthos是一款能幫助企業迅速部署混合雲架構的跨雲管理平台。若是企業資源龐大且分佈於多雲環境,每一次的更新與維護都需要針對不同架構調整,將會大幅提升管理應用程式的負擔,而透過Anthos便可以將複雜的多雲環境以統一形式呈現,加速開發人員管理應用程式,一次完成多雲部署,建立更敏捷、高效的應用程式維運環境。
CI/CD VS DevOps
From ChatGPT: 簡單來說,DevOps 和 CI/CD 是有關聯但範圍不一樣的概念:
-
DevOps(Development + Operations)是一個文化、理念、做事方法,目標是促進開發(Dev)和運維(Ops)團隊合作,加速產品從開發到部署的流程,讓軟體能更快、更穩定地交付。
- 內容可以很廣,包括:自動化部署、基礎設施即程式(IaC)、監控、回報機制、團隊溝通等等。
-
CI/CD(Continuous Integration / Continuous Delivery or Deployment)則是實現DevOps目標的一組具體技術流程。
- CI(Continuous Integration):持續整合,指的是開發人員經常(一天多次)將程式碼推送到版本庫,並透過自動化建置、測試,確保每次提交都是穩定的。
-
CD(Continuous Delivery / Deployment):
- Delivery:持續交付,指的是程式碼通過測試後可以隨時部署到生產環境,只是可能還要人手下指令。
- Deployment:持續部署,則是程式碼一通過測試就自動部署到生產環境,不需人工干預。 簡單一句話總結:
- DevOps 是一個大範圍的文化跟目標,CI/CD 是實現這個目標的方法和工具之一。