發表文章

目前顯示的是 3月, 2024的文章

Nmap諸神之眼_工具使用開箱_part2_SMB/SAMBA滲透測試弱點修補

圖片
  SMB(Server Message Block)和Samba都是涉及檔案共享的技術。 SMB是一種網絡通訊協定,它允許在局域網上共享文件和打印機。用於實現網絡上的電腦之間的檔案、印表機、序列埠共享,以及命名管道和郵件槽等通信抽象。這個協議在 1985 年由 IBM 文檔記載,後來經過多次擴展以支持新的命令和功能,並且每個新版本都與先前版本向後兼容。SMB 協議具有不同的方言版本,用以支持不同的操作系統版本。這使得在局域網中能夠同時運行不同版本的 SMB 協議的客戶端和伺服器。微軟後來將SMB改名為CIFS(Common Internet File System),這是一個更加豐富的協定版本,包含了更多新的功能。 Samba 是 SMB 協議的一個開源實現,廣泛用於讓 UNIX 系統能夠與運行 Windows 系統的機器共享文件和印表機資源。Samba不僅支持網絡文件和打印服務,還能夠整合入Windows Server的網域,擔任域控制器。使用Samba可以將Linux或UNIX計算機配置為文件伺服器,讓Windows客戶端可以訪問共享文件和目錄,同時也可以配置為打印服務器,讓Windows客戶端能夠連接到打印機並打印文檔。 在設定Samba時,可以通過編輯配置文件(通常是smb.conf)來定義各種參數,如工作組、伺服器註釋、NetBIOS名稱、訪問控制列表等,從而控制哪些用戶或網絡可以訪問Samba伺服器,以及他們可以訪問的資源。通過客戶端工具如smbclient,可以從Linux端訪問Samba共享,或者直接從Windows的檔案資源管理器訪問共享文件夾 總之,SMB 是使不同電腦能夠進行資源共享的關鍵網絡協議,而 Samba 則是讓 UNIX 系統能夠進入這個由 Windows 系統主導的共享網絡的重要工具。 Windows系統默認開發SMB 445的port! 可透過nmap去探測列舉出445 port nmap -p 445 -A 目標IP Address SMB歷年嚴重漏洞補丁編號 MS08-067 https://learn.microsoft.com/zh-tw/security-updates/securitybulletins/2008/ms08-067 MS17-010 https://learn.microsoft.com/zh-tw/

Vagrant工具的使用_part1.VM自動化管控工具介紹

圖片
Vagrant 是一個開源工具,用於藉助如 VirtualBox 這樣的提供者來管理虛擬機器。 使用命令行,可以通過安裝、更新、啟動或關閉來管理任何可用的作業系統。 Vagrant基本組成 其實需要Providers (常見的就是virtualbox,VMWare,HyperV)跟BaseBox(鏡像檔) Vagrant其實是用來輔助我們做特定provider的VM快速管控用途的。 比方藉由vagrant 腳本自動化批次建立大量VM的功能(3台ubuntu的VM) Vagrant官網 https://www.vagrantup.com/ Vagrant 是一種建立和管理虛擬機環境的工具,特別是在軟體開發中廣泛使用。 它提供了一種簡單、易於配置的方法來管理和部署虛擬化的開發環境。 以下是關於Vagrant的一些基本介紹,以及它是如何被用於軟件開發的。 Vagrant 的核心功能: 跨平台支持:Vagrant 可以在 Windows、macOS 和 Linux 上運行,讓開發團隊無論使用何種作業系統都能夠輕鬆合作。 易於配置:透過 Vagrantfile(一種Ruby語言格式的配置文件),使用者可以定義和配置虛擬機的具體參數,如作業系統、網絡設置、依賴軟件等。 一致的開發環境:Vagrant 保證了在不同機器上的開發環境一致性,解決了 "在我機器上能運行" 的問題。 易於部署:透過與雲服務(如AWS、Google Cloud)或虛擬化技術(如VirtualBox、VMware)的集成,Vagrant 允許一鍵部署虛擬機。 自動化腳本支持:Vagrant 支持使用 shell 腳本、Chef、Puppet 或 Ansible 等自動化管理工具,來自動安裝和配置軟件。 Vagrant運作方式 流程圖顯示了 Vagrant 如何作為開發者與虛擬機之間的一個橋樑,從建立、配置到操作都讓流程自動化和簡化。 Step1.開發者將創建一個 Vagrantfile 或從某個儲存庫獲取一個,或使用 Vagrant init 指令來創建 Vagrantfile。使用 vagrant up 命令來啟動過程。這是從終端機或命令提示字元執行的,而這條命令會參照一個叫做 Vagrantfile 的配置檔案。Vagrant up 指令會搜索 Vagrantfile。 Step2.

Docker筆記(六)_Docker File, Docker Image(映像檔分層結構),Registry , Docker Container

圖片
  接續前面篇章 Docker筆記(一)_容器和虛擬化的觀念 Docker筆記(二)_Win10上docker的安裝與執行_報錯處裡 Docker筆記(三)_Win10上docker的指令操作part1.查看系統訊息、版本、容器跟映像檔基礎指令 Docker筆記(四)_docker的指令操作part2.Docker Engine,Docker Machine筆記 Docker筆記(五)_映像檔的安全性來源判讀 https://www.geeksforgeeks.org/how-to-run-a-python-script-using-docker/ Docker File 一個簡單的文字檔案,包含了構建Docker鏡像的命令(FROM, RUN, COPY, … ENTRYPOINT )。 這個檔案沒有任何擴展名。 https://docs.docker.com/build/guide/layers/ Docker Image ( Layers of Image ) 是一個輕量級、獨立且可執行的軟件包,通常建議是一個極度精簡的linux或windows運行環境,內容物通常涵蓋依賴套件、函式庫。 客製化Dockerfile檔案後再通過docker build命令創建而成,那image則可用Dockerfile版控。 儲存在Docker註冊處(例如Docker Hub)。 包含運行一個應用所需的一切,如代碼、運行時環境、系統工具、系統庫和設置。 Docker image在儲存時候是以layer的方式儲存,一個鏡像是多個唯讀層的堆疊,這些層引用其他鏡像。 映像是可被多個容器給共享的,映像中每層皆共享。 沒有它你就建立不了 Container,因為後續透過docker run來變成一個container。 補充: 對於匿名使用,每六小時100個容器鏡像請求的速率限制現已生效,而對於免費 Docker 帳戶,則是每六小時200個容器鏡像請求。超過這些限制的鏡像請求將被拒絕,直到六小時的時間間隔過去。 Docker Registry(倉庫) 用於托管、存放 Docker 鏡像的服務 Docker Trusted Registry :可部署於本地或雲端 倉庫分公開庫跟私有庫(只有內部特定人員可存取) Docker Hub 為Docker官方提供的一個Registry,上面存放各種

Docker筆記(五)_映像檔的安全性來源判讀

圖片
  接續前面篇章 Docker筆記(一)_容器和虛擬化的觀念 Docker筆記(二)_Win10上docker的安裝與執行_報錯處裡 Docker筆記(三)_Win10上docker的指令操作part1.查看系統訊息、版本、容器跟映像檔基礎指令 Docker筆記(四)_docker的指令操作part2.Docker Engine,Docker Machine筆記 基本上Docker Hub充斥很多映像檔,不見得都很安全。 可以去認是官方的image,通常會較安全。 https://hub.docker.com/_/ubuntu https://hub.docker.com/_/node Docker Hub上有三種標章,綠色優先其他的就要再評估。 不過官方也有稱以有這三類標章為較有保障,這類相關授權出處和一些readme之類配置文件通常都不馬虎很詳細,official的比較少或幾乎沒有vulnerabilities。 https://docs.docker.com/trusted-content/official-images/ 盡量不要用來路不明的image,除非是你公司或團隊自己搭建的image。 Ref: 資安業者在Docker Hub中找到逾1,600個惡意映像檔 https://www.ithome.com.tw/news/154449 專家深入剖析Docker容器常見攻擊手法與防護對策 https://www.ithome.com.tw/news/113303

Docker筆記(四)_docker的指令操作part2.Docker Engine,Docker Machine筆記

圖片
  接續前面篇章 Docker筆記(一)_容器和虛擬化的觀念 Docker筆記(二)_Win10上docker的安裝與執行_報錯處裡 Docker筆記(三)_Win10上docker的指令操作part1.查看系統訊息、版本、容器跟映像檔基礎指令 Docker Engine 主要採用Client/Server架構,client端藉由docker client向docker daemon 發送request(可能透過rest api,cli),做相應的docker命令處理。 共具有三個組成元件(依序由最外部高層到底層介紹) 1.Docker CLI:Docker對外的 Command Line Interface (如part1篇章介紹的) 2.Docker Rest API : Docker對外的rest request介面 3.Docker Daemon:一個常駐的服務,用於接收client請求(執行、建置、容器分配...etc),通常可藉由上面兩種去做操作。 https://www.codementor.io/blog/docker-technology-5x1kilcbow Docker Machine 用於管理容器化節點,換言之,就是安裝了Docker Engine的主機。可用於管理大量Docker Host,每台被管的節點都是一個Docker Server-Docker Client的搭配組合。 https://www.runoob.com/docker/docker-machine.html

RS232 Reference

  https://sites.google.com/view/squarecat/%E4%B8%B2%E5%88%97%E5%82%B3%E8%BC%B8/c-%E4%B8%B2%E5%88%97%E5%82%B3%E8%BC%B8 https://blog.tonycube.com/2011/05/rs232-serial-port.html

邊緣運算遇到的問題發展_邊緣運算容器化_結合雲原生(Cloud Native)

圖片
https://www.winsystems.com/cloud-fog-and-edge-computing-whats-the-difference/ 邊緣運算最初遇到的問題 雲端運算因應不同情境應用需求所衍生出的邊緣運算, 其實對我們寫程式的軟體人員而言,多半還是會顧慮到如下問題: 1.應用程式下發可移植性問題(標準環境): 我們寫好的程式應用需要具備可移植性,雲端去下發到邊緣端應用時候,有可能因應邊緣端不同環境(比方OS不同),就導致應用無法啟動。 2.可統一編管性問題: 由單一的控制面系統管理雲端及邊緣上的應用 比方部門中你上面就是由主管分配任務給你,假設有多位主管都分配任務給員工時,要聽誰的以誰為主,此時就類比於邊緣端的工作混亂情況。 3.可伸縮性: 一套架構可支持不同性能、規模的基礎設施。 4.可去中心化: 模糊邊緣與中心的邊界,實踐應用和資料的全局分散式協作。 傳統方式物聯網設備採集到資料直接上報給雲端,如果雲端掛了那整個系統就癱瘓了。 但在邊緣運算搭配IoT模式下,物聯網設備採集到資料是傳到鄰近的邊緣端,此時即便雲端掛了整套系統仍可正常運行,某種程度也算備援機。但可能遇到問題就是管理者無法在雲端即時觀測到邊緣端運行情況。 邊緣運算容器化 容器化通常市面常見的成熟工具技術也就是Docker了,之前篇章介紹過。 Docker筆記(一)_容器和虛擬化的觀念 容器化部屬優點: 1.解耦運行之間的依賴 藉由將服務打包成容器後,發佈到邊緣終端上,由於已經包成容器,也不會被OS侷限因為是基於應用軟體層。 2.標準化應用的分發 Docker有統一標準的鏡像倉庫,可將打包好的應用容器發佈到該地方,有需要時候再去作拉取。 3.擴充應用類型十分容易 比方一個容器不夠可能就是多運行幾個容器。 邊緣運算容器化不足的地方 單機限制: 缺乏多機通訊網路,限制邊緣總算力的規模。 編管限制:缺乏多實體、不同節點擴展主機的連接能力,限制了對複雜業務描述的彈性。 更新限制:需要安裝業務以外的應用才能對容器進行更新。 管理限制:邊緣應用定義和管理模式與應用分離,限制了業務敏捷性。 邊緣運算從容器邁向雲原生(Cloud Native) 雲端原生是指為最佳利用或實現雲端特性而創建的東西。這些雲端特性是雲端運算原始定義的一部分,包括作為服務提供的功能。雲端運算的特徵還包括可擴展、彈性、共享、按

邊緣運算_雲端到邊緣端

圖片
https://www.fsp-group.com/tw/knowledge-app-42.html 在學校通常會有所謂的班導師帶領某一班級學生 再上層可能就會有校長跟主任有階層關係 不會直接整團各年級全校學生都交給最上層的校長去管理 而邊緣運算發展就好比剛前面舉例的 可以讓運算貼近資料源頭,從而去解決海量設備的管理與資料傳輸有延遲的問題。 雲端運算 雲端運算的概念可以追溯到1960年代的“時間共享”系統,但直到2000年代早期互聯網的普及和硬件成本的下降,雲端運算才開始迅速發展。雲端運算讓企業和個人能夠通過互聯網訪問服務器、儲存空間和各種應用服務,而無需在本地購買和維護物理硬件。 優點 成本效益:用戶按需支付,避免了昂貴的硬件投資和維護成本。 靈活性和可擴展性:可以根據需求輕鬆擴展資源。 易於維護:服務供應商負責系統維護和更新。 缺點 延遲:數據在傳輸到雲端服務器進行處理時可能會遇到延遲。 安全性和隱私:數據儲存在雲端可能引發安全性和隱私擔憂。 此外其實台灣廠商、企業尤其以半導體、光電、製造業通常做B2B這類的產業多半是不上雲的,普遍B2C做服務的產業會上雲。 常見平台 Amazon Web Services (AWS) Microsoft Azure Google Cloud Platform (GCP) 邊緣運算(較鄰近使用者終端) 邊緣運算是相對較新的概念,隨著物聯網(IoT)設備的普及和5G技術的發展而興起。它旨在將數據處理和存儲從雲端運算中心轉移到離數據源更近的位置,以減少延遲,提高處理速度。 主要在於把數據處理從直送中央雲端移到更接近資料來源的地方。 透過大型運算設備,或由多台中小型運算裝置所組成的本地區網(Local Network)。 在此小型裝置泛指穿戴式裝置、智慧手機、閘道器、監視攝影機、銀行ATM或其他IoT物聯網設備等。 優點 降低延遲:通過在數據產生地點進行處理,減少了數據傳輸時間。 節省帶寬:減少了大量數據傳輸至雲端的需要。 提高隱私和安全性:數據可以在本地處理,降低了數據外洩的風險。 缺點 成本:部署和維護邊緣計算設備可能需要較高的初始投資。 管理複雜性:管理分散的邊緣設備比集中的雲服務器更複雜。 常見工具和平台 Amazon Web Services (AWS) IoT Greengrass Microsoft Azure IoT