2020年7月21日 星期二

天下文章一大抄,你錯我錯一起叫!

個人習慣將資料做三個複本,每月另備到庫存硬碟,因此不太在意勒索病毒。恰好前些日子機關舉辦資安意識講座,講師提到最近有一支勒索病毒利用作業系統的漏洞,可以避過防毒軟體的查殺,病毒使用的技術叫「RIPlace」。這個技術引起我的興趣,上網搜尋發現有大量文章報導這支病毒,基於公務員的潛意識,首先瀏覽技服中心的資安新聞,結果~~是我國學有問題?還是眼睛業障重?我真的看不懂這段中文字「(3)將原始檔案存入硬碟,透過Rename功能置換原始檔案」,原始檔案不就在硬碟中,幹嘛還要「將原始檔案存入硬碟」?然後還「透過Rename功能置換原始檔案」,自己換掉自己,又是什麼道理?
技服的頁庫存檔
還好文章底下有英文參考來源, 連到www.nyotron.com看看(這個漏洞是它找到的),原文是「3.OR saving encrypted file to disk, then replacing it with the original file using the Rename operation.」:
nyotron
用Google翻譯這段英文的結果:「將加密的文件保存到磁盤,然後使用重命名操作將其替換為原始文件」,這中文的前段是對了,後段還是怪怪的,「使用重新命名的方式將它換成原始檔案」,這樣加密後的內容不就又回到原來的樣子,是要勒索誰呀!
因此我推斷應該是作業系統有個漏洞,將加密檔案的名稱換成原始檔案的名稱時(是替換檔名,不是替換檔案),作業系統不會檢查兩支檔案使用相同名稱,因此加密檔案存活下來,而原始檔案變成無主野鬼。至於原始檔案的內容是繼續留在原位置,還是加密檔案會因更名成功而覆蓋原始檔案本來的位置,我就不確定了!
後來又找到另一個英文網站,不僅提供更詳細的介紹,還畫出流程圖, 有關RIPlace的介紹,它就提到「Writing the encrypted data from memory to new file and then using the Rename call to replace the original file.」(將加密的數據從內存寫入新文件,然後使用“重命名”調用替換原始文件),這樣看起來就合理多了!
bleepingcomputer

7月21日再上技服網站,這篇新聞已經修正了。
技服資安新聞

在發現技服的資安新聞有疑問後,繼續查詢其他資安網站的內容,真的「天下文章一大抄」大家都錯一樣。詳如後面的截圖。本篇沒有特別用意,只想傳達「盡信書不如無書」,只要覺得不合常理,就該大力懷疑!









2020年3月28日 星期六

拿回Kali的ROOT主控權

Kali Linux 滲透測試工具(第三版)-第2章「安裝Kali Linux」補充說明 」提到,2020年的Kali預設不提供 root 登入,在使用一段時間後,發現執行滲透測試,沒有 root 權限很不方便,決定要拿回 root 權限!如果你也有這個需求,可以參考本篇內容。
一、為root重設密碼
按照正常程序登入系統,重設root密碼。
kali@kali2020A:~$ sudo passwd root
New password:                                            輸入新密碼,輸入時是看不到內容的
Retype new password:                               輸入確認密碼,輸入時是看不到內容的
passwd: password updated successfully             看到這段字,表示密碼設定成功

如果正常程序無法修改root密碼,請改用下面方式:
1. 重新開機,在出現啟動選單時按下「e」鍵 ,進入GRUM的開機程序腳本編輯畫面。
2. 找到「link  /boot/...」這一列,將中間的「ro」(唯讀)改成「rw」(讀寫),並在這一列的最後面加一個空格,然後輸入「init=/bin/bash
3. 完成開機腳本修改後,按Ctrl+x繼續啟動作業,此時會進入root的單人作業模式。
4. 在終端機執行passwd
kali@kali2020A:~$ passwd
New password:
Retype new password:
passwd: password updated successfully

二、修改root密碼只是為了得到密碼資訊,當開機後,確實可以用root登入純文字終端機,卻依然無法登入X-window,請用nano或vi編輯「/etc/pam.d/gdm-password」,將「auth  required        pam_succeed_if.so user != root quiet_success」這一列註解掉,存檔後,重新開機。
#%PAM-1.0
auth    requisite       pam_nologin.so
# auth  required        pam_succeed_if.so user != root quiet_success   (註解此列)
@include common-auth
auth    optional        pam_gnome_keyring.so
@include common-account

三、大功告成!
現在無論純文字終端機,或x-window都可以用 root 身分登入了!

2020年2月15日 星期六

Kali Linux 滲透測試工具(第三版)-第2章「安裝Kali Linux」補充說明

Kali Linux 滲透測試工具(第三版)》是依 Kali 2019.2 及 2019.3 版本編寫,但付梓後,Kali 隨即發布 2019.4 版,在 2020.1.28 再更新 2020.1 版,這兩個版本的預設環境,和之前版本略有不同,因此,書中第二章部分內容可能不適用,讀者必須視版本自行調整。本篇博文針對2020.1的變更,提供摘要說明
首先,直接影響的有:x-window 的預設界面由 GNOME 改成 Xfce,據說Xfce較不耗資源,對滲透測試人員來講,資源應用會比畫面美觀重要。對於用慣GNOME的人,還是可以另外安裝GNOME。
apt update && apt upgrade-y
apt install gnome
再來是Live模式的預設帳密已從 root / toor 改成  kali / kali,2020.1版不再提供root帳號。依照Kali官方說明,需要root權限的工具愈來愈少,而有些工具甚至要求非root權限(像chrome)。但nmap有些功能還是需要root身分才能正常作業,例如「-sS」選項,nmap預設使用-sS探測端口的開/閉情形,但非root模式時,則改用-sT掃描。
2020.1版的其他改變:
不再提供不同桌面的安裝映像檔,現在只剩3個版(各分32bit/64bit):Installer、Live、NetInstaller。
Installer:可以離線安裝,裡頭已包含各項工具,但使用者必須在安裝過程中自行選擇想安裝的內容。
NetInstall:線上安裝,只需下載必要核心,其它部分在安裝時,從網路下載。
Live:就和以前的Live版一樣,可以燒錄到DVD或USB,如前所述,它的帳號及密碼已改用 kali/kali,不再是root/toor。
2019.4需要另外安裝的undercover(臥底)功能,2020.1已改成內建安裝,但此功能只能在xfce環境使用。
若你的 Kali 沒有 undercover 功能,可以執「suo apt install kali-undercover」安裝
之後即可在終端機執行「kali-undercover」進行切換。
2020.1的Installer映像檔的安裝說明:
請參考本書2.1節建立虛擬機,並將下載回來的「kali-linux-2020.1-installer-amd64.iso」掛載到虛擬機的光碟機上。啟動虛擬機後,會由光碟機進入安裝程式程序,可選擇 Graphical Install(圖形界面安裝程序)或Install(文字界面安裝程序),兩者過程類似:
1、此處以Graphical Install為例說明(圖1)
圖1:選擇Graphical Install以圖形化界面安裝

2、語言選擇預設為English,這裡改成Chinese (Traditional) 中文(繁體)(圖2)
圖2:選擇Chinese (Traditional) 中文(繁體)
3、位置選擇:臺灣(圖3)
圖3:位置請選台灣
4、設定鍵盤:英文(圖4)
圖4:鍵盤請選英文
5、接下來就會載入基本元件(圖5),就等它跑完!
圖5:載入所需元件

6、在網路設定的主機名稱:預設為kali,可依自己需要修改,此處改成kali2020A(圖6)
圖6:設定電腦名稱
7、網域名稱:因為是Windows裡的虛擬機,故設為WORKGROUP,以便和宿主的網域一致。(圖7)
圖7:設定網域 或群組名稱
8、設定使用者名稱:重點,這裡會建立非管理性的帳號,代替root。請替新的使用者輸入完整姓名:請輸入使用者的姓名,例如「Kea Leeve」(圖8)
圖8:輸入使用者的姓名
9、您的帳號的使用者名稱:就是帳號啦,就依Kali官方說明,取名為 kali(圖9)
圖9:輸入使用者的帳號
10、設定密碼:kali (圖10
圖10:設定使用者的密碼
11、接著偵測時區及磁碟,然後進入磁碟分割,直接按「繼續」到下一畫面,然後選擇「使用整顆磁碟」(圖11)

圖11:選擇磁碟分割方式
12、下一畫面選擇磁碟機,因為只有一台,所以直接按「繼續」到下一畫面,在此選擇「把所有的檔案全部放到同一個分割區中」(圖12)
圖12:將所有檔案放到同一個分割區
13、下一畫面是確認磁碟分割選項,如果沒有問題,就按「繼續」吧!(圖13)
圖13:確認磁碟分割設定無誤
14、磁碟分割步驟的最後一步,就是將分割選項寫入磁碟,這裡記得要選「是」(圖14)(預設是停在「否」)
圖14:將磁碟分割資訊寫入磁碟
15、完成磁碟分割後,就會進行基本系統安裝(圖15),這裡就只能等待,完成後,進入其他設定項目。
圖15:基本系統安裝中
16、設定套件管理程式的第1個畫面是HTTP Proxy設定,如果不是透過Proxy上網,可以留空白,直接「繼續」到下個畫面(圖16)。

圖16:設定上網的Proxy伺服器
17、接著是設定apt(套件安裝管理員)及安裝基本軟體,請耐心等候!(圖17)
圖17:安裝基本軟體
18、再來就是新版Kali的重點,要裝什麼軟體,由使用者自行決定(圖18)
圖18:使用者自行選擇欲安裝的軟體
19、預設桌面環境是Xfce,若喜歡GNOME,可在此增選之。
至於其他工具,如果不知怎麼選擇,就全勾吧!或者以預設(default安裝Live模式使用的工具),由於我是貪心的使用者,故將 Install tools by purpose(依使用目的安裝所需工具)底下的選項全打勾(圖19),免得日後還要逐一安裝,按下「繼續」後就開始安裝套件了,這要一段不短的時間。
期間出現圖20的桌面管理設定,我有選用GNOME,所以要設定預設的管理員,若沒擇安裝GNOME,應該不會有這個畫面吧?
圖19:筆者將Install tools by puposse的項目都打勾(Reporting除外)

圖20:因多安裝GNOME桌面,設定gdm
20、好了,快要安裝完成,接著就是設定開機程式(GRUB),請選擇「是」將GRUB安裝到主開機記錄(MBR)(圖21)。
圖21:將GRUB安裝到主開機記錄區
21、進到下一個畫面,因為只有一台磁碟,因此選「/dev/sda」,然後按「繼續」(圖22),再等一下下,就可安裝完成了!(圖23)
圖22:選擇安裝GRUB的可開機磁碟

圖23:終於完成系統安裝
登入
在安裝時設定使用者名稱(Kea Leave),登入時可以選擇此帳號(圖24),並輸入密碼(圖25),或者要切換x-window環境,可以先點擊「登入」鈕左方的齒輪(圖26),選擇桌面環境,再「登入」。

圖24:選擇登入系統的使用者

圖25:輸入使用者密碼

圖26:或者先選擇桌面環境,再登入

圖27A是GNOME界面,圖27A右圖是xfce界,謹供比較。
圖27A:GNOME畫面
圖27B:Xfce畫面

不知是誰的bug
在xfce執行 kali-undercover,將界面轉成Windows 10模擬模式(圖28),若未再次執行kali-undercover切回Linux模式,下回啟動成GNOME,會看到終端機的操示符依然停在「C:\home\kali>」(圖29)。
圖28:切換到Windows 10模擬畫面
圖29:啟動成GNOME桌面,提示符仍顯示「C:\home\kali>」

在xfce的Windows 10模擬模式,執行kali-undercover,終端機的提示符回復Kali的樣字,但桌面看起來還是像Windows 10(圖30),與Kali文件所說:再次執行kali-undercover之後會回復前次的布景主體不一樣。
圖30:雖然終端機切回xfce,但桌面看起來仍是Windows 10(和圖27B相比)

免密碼的sudo
2020.1之後已不再有root權限,需要使用sudo才能執行特權指令, 可是sudo會要求驗證密碼(圖31),如果覺得煩,可以執行「udo dpkg-reconfigure kali-grant-root」,然後選擇「Enable password-less privilege escalation」(提權時毋須密碼)(圖32),雖然還是需要「sudo」,但系統不會再問密碼了。
圖31:使用sudo執行特權指令,需要再次確認密碼

圖32:利用 dpkg-reconfigure kali-grant-root改成不需再次確認密碼


這次簡單補充至此,日後若有新的發現,再另為文介紹!