hacktricks/macos-hardening/macos-useful-commands.md
2023-07-07 23:42:27 +00:00

11 KiB
Raw Blame History

macOS 便利なコマンド

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥

MacOS 自動列挙ツール

特定のMacOSコマンド

#System info
date
cal
uptime #show time from starting
w #list users
whoami #this user
finger username #info about user
uname -a #sysinfo
cat /proc/cpuinfo #processor
cat /proc/meminfo #memory
free #check memory
df #check disk

launchctl list #List services
atq #List "at" tasks for the user
sysctl -a #List kernel configuration
diskutil list #List connected hard drives
nettop #Monitor network usage of processes in top style

system_profiler SPSoftwareDataType #System info
system_profiler SPPrintersDataType #Printer
system_profiler SPApplicationsDataType #Installed Apps
system_profiler SPFrameworksDataType #Instaled framework
system_profiler SPDeveloperToolsDataType #Developer tools info
system_profiler SPStartupItemDataType #Startup Items
system_profiler SPNetworkDataType #Network Capabilities
system_profiler SPFirewallDataType #Firewall Status
system_profiler SPNetworkLocationDataType #Known Network
system_profiler SPBluetoothDataType #Bluetooth Info
system_profiler SPEthernetDataType #Ethernet Info
system_profiler SPUSBDataType #USB info
system_profiler SPAirPortDataType #Airport Info


#Searches
mdfind password #Show all the files that contains the word password
mfind -name password #List all the files containing the word password in the name


#Open any app
open -a <Application Name> --hide #Open app hidden
open some.doc -a TextEdit #Open a file in one application


#Computer doesn't go to sleep
caffeinate &


#Screenshot
# This will ask for permission to the user
screencapture -x /tmp/ss.jpg #Save screenshot in that file


#Get clipboard info
pbpaste


#system_profiler
system_profiler --help #This command without arguments take lot of memory and time.
system_profiler -listDataTypes
system_profiler SPSoftwareDataType SPNetworkDataType


#Network
arp -i en0 -l -a #Print the macOS device's ARP table
lsof -i -P -n | grep LISTEN
smbutil statshares -a #View smb shares mounted to the hard drive

#networksetup - set or view network options: Proxies, FW options and more
networksetup -listallnetworkservices #List network services
networksetup -listallhardwareports #Hardware ports
networksetup -getinfo Wi-Fi #Wi-Fi info
networksetup -getautoproxyurl Wi-Fi #Get proxy URL for Wifi
networksetup -getwebproxy Wi-Fi #Wifi Web proxy
networksetup -getftpproxy Wi-Fi #Wifi ftp proxy


#Brew
brew list #List installed
brew search <text> #Search package
brew info <formula>
brew install <formula>
brew uninstall <formula>
brew cleanup #Remove older versions of installed formulae.
brew cleanup <formula> #Remove older versions of specified formula.


#Make the machine talk
say hello -v diego
#spanish: diego, Jorge, Monica
#mexican: Juan, Paulina
#french: Thomas, Amelie

########### High privileges actions
sudo purge #purge RAM
#Sharing preferences
sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist (enable ssh)
sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist (disable ssh)
#Start apache
sudo apachectl (start|status|restart|stop)
##Web folder: /Library/WebServer/Documents/
#Remove DNS cache
dscacheutil -flushcache
sudo killall -HUP mDNSResponder

インストールされたソフトウェアとサービス

インストールされたアプリケーションとリソースへの権限をチェックして、不審なアプリケーションがインストールされていないか確認してください。

system_profiler SPApplicationsDataType #Installed Apps
system_profiler SPFrameworksDataType #Instaled framework
lsappinfo list #Installed Apps
launchtl list #Services

ユーザープロセス

User processes are the programs or applications that are executed by a user on a macOS system. These processes run in the user's context and have limited privileges compared to system processes.

ユーザープロセスとは、macOSシステム上でユーザーが実行するプログラムやアプリケーションのことです。これらのプロセスはユーザーのコンテキストで実行され、システムプロセスと比較して権限が制限されています。

User processes can be managed and monitored using various commands in macOS. Here are some useful commands for managing user processes:

ユーザープロセスは、macOSでさまざまなコマンドを使用して管理および監視することができます。以下は、ユーザープロセスを管理するための便利なコマンドです。

  • ps: This command displays information about active processes on the system. By default, it shows the processes running in the current user's context.

    • ps:このコマンドは、システム上で実行中のプロセスに関する情報を表示します。デフォルトでは、現在のユーザーのコンテキストで実行されているプロセスが表示されます。
  • top: This command provides real-time information about system processes, including user processes. It displays a dynamic view of the processes and their resource usage.

    • top:このコマンドは、ユーザープロセスを含むシステムプロセスに関するリアルタイム情報を提供します。プロセスとそのリソース使用状況の動的なビューが表示されます。
  • kill: This command is used to terminate a running process. It sends a signal to the specified process, instructing it to exit.

    • kill:このコマンドは、実行中のプロセスを終了するために使用されます。指定したプロセスにシグナルを送信し、終了するように指示します。
  • lsof: This command lists open files and the processes that have them open. It can be used to identify which processes are accessing specific files.

    • lsof:このコマンドは、開いているファイルとそれを開いているプロセスの一覧を表示します。特定のファイルにアクセスしているプロセスを特定するために使用できます。

By using these commands, you can effectively manage and monitor user processes on a macOS system.

# will print all the running services under that particular user domain.
launchctl print gui/<users UID>

# will print all the running services under root
launchctl print system

# will print detailed information about the specific launch agent. And if its not running or youve mistyped, you will get some output with a non-zero exit code: Could not find service “com.company.launchagent.label” in domain for login
launchctl print gui/<user's UID>/com.company.launchagent.label

ユーザーの作成

プロンプトなし

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥