Skip to main content

Detecting privilege escalation, incident response and mitigation, Splunk

 For example, your sensitive file is configured in such a way to splunk so that any change's on that file would let you know. 

You now know your /etc/passwd file has been changed and the user did this her/her uid is 1002 and the user user /bin/cp exe tool to do this. 

From the victim server, auditd and sshd logs are forwarded to splunk. Our task is find out the user's name. 

Query in splunk:

source="/var/log/victim-server/audit.log" uid=1002 /Home

Now we shall know the username of uid 1002 which is victor.

Now this user victor may try to ssh on the victim-server. We want to know the ip address of the system from where victor trying for ssh. 

source="/var/log/victim-server/sshd.log" "failed password for victor"

now we shall get the ip address of victor's machine. 

Now there is another way to get the username of uid 1002, for that you need to what does acct auid field means in auditd logs. acct for accounts and auid for audit uid. 

source="/var/log/victim-server/audit.log" auid=1002 AND acct=* AND exe="*sshd" | top 0 acct

or 

source="/var/log/victim-server/audit.log" auid=1002 AND acct=* AND | top acct


Now investigating the audit logs, how to find what tool attacker download over https after getting access on the system?

source="/var/log/victim-server/audit.log" https   (we could also use .com keyword)

 

Now say attacker switch the user account using su command. How you gonna find that?

source="/var/log/victim-server/audit.log" uid="1002" exe="/bin/su" | top 0 acct

or

source="/var/log/victim-server/audit.log" uid="1002" exe="/bin/su"

Now we shall get the name of user account that had been switched to. 


Now access the server to investigate further:

after accessing the server issue sudo -i command to get root access. 

now type history command or cat /root/.bash_history command to see what commands previously launched by the attacker. 

check /root/.ssh/authorized_keys files. 

In this case the vulnerability lies in /bin/cp utility. Because SUID permission is set on /bin/cp utility. When this permission is set then command execute in root privileges and any unprivileged user can write to any file on the system if they use cp tool. 

so to find that tool, 

find / -perm -u=s -type f 2>/dev/null

after find that tool, now issue the below command. 

chmod u-s /bin/cp


Now remove scanner user from the /etc/passwd file. You can use vim or nano or mousepad or pluma tool to do that or can use the below command. 

sed -i "$ d" /etc/passwd

Also remove the entry from /root/.ssh/authorized_keys file. 

sed -i "$ d" /root/.ssh/authorized_keys

Avi



Comments

Popular posts from this blog

API hacking lab setup

 Follow the commands to install and configure API hacking lab: 1. Install kali linux and update all the packages.  apt update -y apt upgrade -y or apt dist-upgrade -y or apt full-upgrade -y If you face any problem regarding update, install cloud flare warp in the host machine, then again start updating packages in your kali vm.  2. Install and configure burpsuite professional.  After that open burpsuite and go to Extensions tab. Click on BAppStore. Search for Autorize extension, It will help us to automate authorization testing. Click on Download Jython from the right side. From Jython website click on Jython standalone JAR and save it. Go to Extensios > Extensions settings >  under Core extension settings find out Python environment on the right pane. Select the jython jar file that you just downloaded. Now again go to BAppStore and re-search for Autorize extension. You will see Install option this time after selecting Autorize extension. Install it. You ...

Installing kansa incident response tool

 Kansa is an IR framework. https://github.com/davehull/Kansa For enterprise data collection, you need to do this first from the admin system: Set-NetConnectionProfile -NetworkCategory Private (In private network) Enable-PSRemoting  from powershell on the system where you want to run this tool. This will enable winrm service with port 5985 and 5986. Check: netstat -naob | findstr "5985"   Also allow tcp port 5985 and 5986 for winrm through the network. You can use  GPO. Though winrm is communicating over http and https but authentication will be happened using kerberos in domain environment.  After downloading it  from the github and unzip it, you need to unlock it using powershell. Need powershell v3 or later. ls -r *.ps1 | Unblock-File Powershell policy bypass: Set-ExecutionPolicy AllSigned | RemoteSigned | Unrestricted From FOR508 course: .\kansa.ps1 -OutputPath .\Output\ -TargetList .\hostlist -TargetCount 250 -Verbose -Pushbin -Pushbin is requir...

Downloading kape incident response tool for forensic triage

 Kape is a triage collection and post-processing application written by Eric Zimmerman. Remember its just the triage collection tool ok? We will analyze the collection later.  https://github.com/EricZimmerman/KapeFiles Kape download: Kroll Artifact Parser And Extractor (KAPE) | Cyber Risk | Kroll Besides full disk image/acquired disk image, this tool allows us to create smaller triage image where important forensic data is present . In case the scenario is divide and conquer , meaning if you want smaller triage image from big size disk image then you can use this and share with your DFIR team to investigate together. The main reason of using kape is now you don't need to wading or sift through into the full image where 10% actual artifacts are present. Kape will allow you to collect those 10% before taking full image. Now you can analysis those 10% of data.  If you want to learn more, please open for508 workbook and labs section 1-2.pdf file and look for page 28. This is...