玄機-第一章 應急響應-Linux日誌分析

来源:https://www.cnblogs.com/dhan/p/18304274
-Advertisement-
Play Games

前言 又花了一塊rmb玩玄機。。。啥時候才能5金幣拿下一個應急靶機,只能說功底還沒到家,唯有繼續加油了。。。 簡介 賬號root密碼linuxrz ssh root@IP 1.有多少IP在爆破主機ssh的root帳號,如果有多個使用","分割 2.ssh爆破成功登陸的IP是多少,如果有多個使用","... ...


目錄

前言

又花了一塊rmb玩玄機。。。啥時候才能5金幣拿下一個應急靶機,只能說功底還沒到家,唯有繼續加油了。。。

簡介

賬號root密碼linuxrz
ssh root@IP
1.有多少IP在爆破主機ssh的root帳號,如果有多個使用","分割
2.ssh爆破成功登陸的IP是多少,如果有多個使用","分割
3.爆破用戶名字典是什麼?如果有多個使用","分割
4.登陸成功的IP共爆破了多少次
5.黑客登陸主機後新建了一個後門用戶,用戶名是多少

應急開始

準備工作

下麵我遇到比較多的且比較重要的都加深顏色了,其實都很重要,只是作者還沒碰到過。

日誌文件 說明
/var/log/cron 記錄了系統定時任務相關的日誌
/var/log/cups 記錄列印信息的日誌
/var/log/dmesg 記錄了系統在開機時內核自檢的信息,也可以使用dmesg命令直接查看內核自檢信息
/var/log/mailog 記錄郵件信息
/var/log/message 記錄系統重要信息的日誌。這個日誌文件中會記錄Linux系統的絕大多數重要信息,如果系統出現問題時,首先要檢查的就應該是這個日誌文件
/var/log/btmp 記錄錯誤登錄日誌,這個文件是二進位文件,不能直接vi查看,而要使用lastb命令查看
/var/log/lastlog 記錄系統中所有用戶最後一次登錄時間的日誌,這個文件是二進位文件,不能直接vi,而要使用lastlog命令查看
/var/log/wtmp 永久記錄所有用戶的登錄、註銷信息,同時記錄系統的啟動、重啟、關機事件。同樣這個文件也是一個二進位文件,不能直接vi,而需要使用last命令來查看
/var/log/utmp 記錄當前已經登錄的用戶信息,這個文件會隨著用戶的登錄和註銷不斷變化,只記錄當前登錄用戶的信息。同樣這個文件不能直接vi,而要使用w,who,users等命令來查詢
/var/log/secure 記錄驗證和授權方面的信息,只要涉及賬號和密碼的程式都會記錄,比如SSH登錄,su切換用戶,sudo授權,甚至添加用戶和修改用戶密碼都會記錄在這個日誌文件中
/var/log/auth.log 註明:這個有的Linux系統有,有的Linux系統沒有,一般都是/var/log/secure文件來記錄居多

查看auth.log文件

這裡著重瞭解一下auth.log,因為這個文件給我坑了。。。


  • auth.log文件在本題目中存儲了:
    登錄成功和失敗的信息,即認證過程,還有登錄成功後系統賬戶的活動動作,比如添加用戶等等(總之這一個文件就包含了我們整個做題的過程)

  • auth.log 文件主要存儲與系統認證和授權相關的日誌信息。具體內容包括但不限於以下幾類信息:

    • 1:登錄和註銷活動:
      成功和失敗的登錄嘗試
      用戶註銷事件

    • 2:認證過程:
      SSH 登錄嘗試(成功和失敗)
      本地控制台登錄
      Sudo 提權事件(成功和失敗)

    • 3:安全事件:
      無效的登錄嘗試
      錯誤的密碼輸入
      鎖定和解鎖屏幕事件

    • 4:系統賬戶活動:
      用戶添加、刪除和修改
      組添加、刪除和修改

    • 5:PAM(Pluggable Authentication Modules)相關信息:
      各種 PAM 模塊的日誌輸出,包括認證和會話管理

grep -a

註意,這個也把我坑了!!!
選項通常是為了處理可能包含二進位數據的文件,將它們視為文本文件進行處理,那麼也就是說如果你直接cat 該文件沒問題,但是你需要對cat出來的文件內容進行處理的話就會報二進位錯誤,那麼也就是說該文件中存在二進位數據的。
為什麼會存在二進位數據??可能就是為了坑你,而且我也學到了使用-a這個參數能夠避免二進位查看報錯。

步驟 1

1.有多少IP在爆破主機ssh的root帳號,如果有多個使用","分割 小到大排序 例如flag{192.168.200.1,192.168.200.2}

剛剛已經講過我被文件坑了,想必如果在不知道auth.log是日誌文件的情況下,大家應該會去找 /var/log/secure 這個文件吧。。。
ok ,我們現在明確了ssh爆破的日誌記錄都在auth.log中 (他這裡又一個auth.log.1,查看了一下估計就是備份文件了,那我們這裡就是用備份文件
命令: cat /var/log/auth.log.1 | grep -a "Failed password for root" | awk '{print $11}' | sort -n | uniq -c'

  • 解釋:
    grep -a "Failed password for root"是過濾出來登錄失敗的記錄
    awk '{print $11}'是將失敗每條記錄中的ip提取出來(這裡就是經驗多了就知道,或者你自己慢慢調試,看是第幾列就列印第幾列)
    sort -n是將ip進行排序,-n其實你加不加無所謂,反正你調試對了就行,我這個就是加-n就能從小到大排序。
    uniq -c就是去重且列印重覆次數

  • flag為:
    flag{192.168.200.2,192.168.200.31,192.168.200.32}
    在這裡插入圖片描述

步驟 2

2.ssh爆破成功登陸的IP是多少,如果有多個使用","分割

命令: grep -a "Accepted " /var/log/auth.log.1 | awk '{print $11}' | uniq -c

  • 解釋
    grep -a "Accepted "就是過濾登錄成功的記錄
    awk '{print $11}' 獲取登錄ip
    uniq -c 去重

  • flag為:
    flag{192.168.200.2}
    在這裡插入圖片描述

步驟 3

3.爆破用戶名字典是什麼?如果有多個使用","分割

  • 錯誤示範:
    這裡本人僅僅列印了第九列,這裡其實是不對的,因為無效用戶名會導致他出現invalid user xxxx,其實xxxx才是我們要的用戶名,所以我下麵這種方式就沒有不同的用戶名都列出來。
    在這裡插入圖片描述

  • 正確方式:
    這裡用到了perl語言,我還沒搞懂就不解釋了,原理肯定是我想的那樣,就是涉及到知識盲區了而已。
    命令: cat /var/log/auth.log.1 | grep -a "Failed password" |perl -e 'while($_=<>){ /for(.*?) from/; print "$1\n";}'|uniq -c|sort -nr

  • flag為:
    flag{root,user,hello,test3,test2,test1}
    在這裡插入圖片描述

步驟 4

4.成功登錄 root 用戶的 ip 一共爆破了多少次

  • 我們已知成功登錄root的ip地址是:flag{192.168.200.2}
    命令: grep -a "192.168.200.2" /var/log/auth.log.1 | grep -a 'Failed password root' | awk '{print $11}' | uniq -c

  • flag為:
    flag{4}
    在這裡插入圖片描述

步驟 5

5.黑客登陸主機後新建了一個後門用戶,用戶名是多少

由於我們現在已經知道了auth.log文件能夠記錄系統賬戶活動,那我們直接grep該文件即可,添加用戶的命令是net user

  • 篩選 net user命令即可
    命令: grep -a 'net user' /var/log/auth.log.1

  • flag為:
    flag{test2}
    在這裡插入圖片描述

總結


成果:
flag{192.168.200.2,192.168.200.31,192.168.200.32}
flag{192.168.200.2}
flag{root,user,hello,test3,test2,test1}
flag{4}
flag{test2}


通過這日誌分析題,瞭解到了日誌文件其實還有一個auth.log的文件日誌,不僅僅能夠記錄認證過程,還能知道系統賬戶執行了哪些賬戶操作,還有其他記錄類型。
需要註意的是,該文件可能包含一些二進位內容,所以我們grep的時候需要用-a參數進行過濾操作,否則會報錯。
總體體驗還是挺好的,第二次因為grep報錯原因浪費掉了好多時間,差幾分鐘就要重開第三次,玩的就是心跳啊。。。

本文來自博客園,作者:竹等寒,轉載請註明原文鏈接。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 在 Visual Studio 中,至少可以創建三種不同類型的類庫: 類庫(.NET Framework) 類庫(.NET 標準) 類庫 (.NET Core) 雖然第一種是我們多年來一直在使用的,但一直感到困惑的一個主要問題是何時使用 .NET Standard 和 .NET Core 類庫類型。 ...
  • 之前也分享過 Swashbuckle.AspNetCore 的使用,不過版本比較老了,本次演示用的示例版本為 .net core 8.0,從安裝使用開始,到根據命名空間分組顯示,十分的有用 ...
  • 1.簡單使用實例 1.1 添加log4net.dll的引用。 在NuGet程式包中搜索log4net並添加,此次我所用版本為2.0.17。如下圖: 1.2 添加配置文件 右鍵項目,添加新建項,搜索選擇應用程式配置文件,命名為log4net.config,步驟如下圖: 1.2.1 log4net.co ...
  • 最近在微軟商店,官方上架了新款Win11風格的WPF版UI框架【WPF Gallery Preview 1.0.0.0】,這款應用引入了前沿的Fluent Design UI設計,為用戶帶來全新的視覺體驗。 ...
  • 當你使用Edge等瀏覽器或系統軟體播放媒體時,Windows控制中心就會出現相應的媒體信息以及控制播放的功能,如圖。 SMTC (SystemMediaTransportControls) 是一個Windows App SDK (舊為UWP) 中提供的一個API,用於與系統媒體交互。接入SMTC的好 ...
  • 在C#中使用RabbitMQ做個簡單的發送郵件小項目 前言 好久沒有做項目了,這次做一個發送郵件的小項目。發郵件是一個比較耗時的操作,之前在我的個人博客裡面回覆評論和友鏈申請是會通過發送郵件來通知對方的,不過當時只是簡單的進行了非同步操作。 那麼這次來使用RabbitMQ去統一發送郵件,我的想法是通過 ...
  • 一個自定義WPF窗體的解決方案,借鑒了呂毅老師的WPF製作高性能的透明背景的異形視窗一文,併在此基礎上增加了滑鼠穿透的功能。可以使得透明窗體的滑鼠事件穿透到下層,在下層窗體中響應。 ...
  • 簡要介紹了一、時鐘體系 1、參考手冊 2、時鐘源3種 3、時鐘樹 4.時鐘詳解 HSE時鐘 HSI時鐘 鎖相環時鐘 系統時鐘 HCLK時鐘 PCLK1時鐘 PCLK2時鐘 RTC時鐘 獨立看門狗時鐘: 12S時鐘: 乙太網PHY時鐘: USBPHY時鐘: MCO時鐘輸出 系統時鐘配置函數Setsys... ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...