Essential Linux Commands for Log Analysis
Prepare Sample SSH Log Files
Log download the log files contain relevant SSH events, including timestamps, source IP addresses, usernames, actions (login, logout), etc.
Commands for Hashing Log Files
1. Generating a Hash (SHA-256)
The most common and secure standard for forensic imaging and log analysis is SHA-256.
2. Saving the Hash to a Verification File
In a forensic investigation, you must save the hash immediately after collecting the evidence.
3. Verifying the Integrity
To check if the log file has been tampered with or corrupted later:
Essential Linux Commands for Log Analysis
1. grep (Global Regular Expression Print)
Used to search for specific text patterns within the log file.
Command: grep "success" ssh.log
Purpose: To filter and display only the lines where a login was successful.
Command: grep "failure" ssh.log | wc -l
Purpose: To count the total number of failed login attempts.
Steps to Analyze SSH Log Files
#cat Desktop/Web_Server_Logs/ssh.log
Analyze failed login attempts:
#cat Desktop/Web_Server_Logs/ssh.log | grep failure
Investigate SSH sessions from unusual or suspicious source IP addresses:
awk (Pattern Scanning and Processing)
Used to extract specific columns (fields) from the log.
Command: awk '{print $3}' ssh.log
Purpose: To extract the Source IP address (which is in the 3rd column)
Command: awk '{print $5}' ssh.log
Purpose: To extract the Destination IP address (which is in the 5th column).
If you want to find the Top 10 IP addresses trying to hack your server, use this combined
Step-by-step breakdown:
awk '{print $3}': Get all Source IPs.
sort: Group identical IPs together.
uniq -c: Count how many attempts each IP made.
sort -nr: Sort numerically in reverse (highest count at the top).
head -n 10: Show only the top 10 results.
#awk '{print $3}' Desktop/Web_Server_Logs/ssh.log | sort | uniq -c | sort -nr | head -n 10
Top Target (Destination) IPs:
192.168.28.254 (High frequency of attempts)
192.168.23.203 (High frequency of attempts)
192.168.27.203 (High frequency of attempts)
1331904022.010000
→ Unix Timestamp (เวลาที่เกิดเหตุการณ์)
-
CU46Bb2UypzdF4eTW
→ Session ID / Connection ID ของ SSH
-
192.168.202.110
→ Source IP (เครื่องที่พยายามเชื่อมต่อ)
-
36586
→ Source Port
-
192.168.27.203
→ Destination IP (เครื่องปลายทาง = SSH Server)
-
22
→ Destination Port (SSH)
-
undetermined / failure
→ สถานะการเชื่อมต่อ
-
INBOUND
→ เป็นการเชื่อมต่อขาเข้า (incoming connection)
-
SSH-2.0-OpenSSH_5.8p1 Debian-ubuntu3
→ Banner ของ SSH
Time Conversion Command
Since the log uses Unix Epoch Time, you can convert it to a human-readable format using the date command.
อ่านเพิ่มเติม:
หมายเหตุ:เนื้อหาในเว็บไซต์นี้มีขึ้นเพื่อวัตถุประสงค์ในการให้ข้อมูลและเพื่อการศึกษาเท่านั้น ช่วยเตือนความจำ
* หากมีข้อมูลข้อผิดพลาดประการใด ขออภัยมา ณ ที่นี้ด้วย รบกวนแจ้ง Admin เพื่อแก้ไขต่อไป
ขอบคุณครับ
#WindowsForensic #ComputerForensics #dfir #forensics #digitalforensics #computerforensic #investigation #cybercrime #fraud