【渗透笔记】Linux主机信息收集

admin 2022年4月9日16:47:41评论159 views字数 4575阅读15分15秒阅读模式

系统架构

# 打印系统信uname -a

【渗透笔记】Linux主机信息收集

# 文件 /etc/issue是一个文本文件,其中包含要在登录提示之前打印的消息或系统标cat /etc/issue
# /etc/lsb-release,/etc/redhat-release文件包含一个被解析以获取信息的描述行cat /etc/*-release

【渗透笔记】Linux主机信息收集

# /proc/version指定了Linux内核的版本,用于编译内核的gcc的版本以及内核编译的时间。他还包含内核编译器的用户名cat /proc/version

【渗透笔记】Linux主机信息收集

# /proc/sys/kernel/ 中的文件可以用来调整和监视Linux内核操作中的各种活动cat /proc/sys/kernel/version

【渗透笔记】Linux主机信息收集

进程

# 列出当前进程快照
ps -efps aux
# /proc 是非常特殊的,也是一个虚拟文件系统。有时被称为过程信息伪文件系统。不包含“真实文件”,而是包含运行时系统信息(例如系统内存、安装的设备、硬件配置等)ls -al /proc/
# 查看关于PID为99的信息ls -al /proc/99

【渗透笔记】Linux主机信息收集

# top命令显示linux机器的处理器活动,并显示实时管理的任务。它会显示正在使用的处理器和内存以及运行进程等其他信息。top

用户和组

# 找到用户的UID或GID等信息id
# 显示登陆到linux服务器的人员w
# 显示当前用户名whoami
# 显示最后一次登陆的用户last
# 格式化打印上次登录日志/var/log/lastlog文件的内容lastlog
# 有关用户信息的基于文本的数据库,可以登录系统或其他拥有正在运行的进程的操作系统用户身份cat /etc/passwd
# /etc/shadow用户通过限制除高度特权的用户对散列密码数据的访问来提高密码的安全级别。通常情况下,该数据保存在超级用户拥有的文件中,并且只能由超级用户访问。cat /etc/shadow
# /etc/sudoers文件内容是使用sudo命令必须遵循的规则,可以用来临时的提升到root权限cat /etc/sudoers
# 打印sudo版本字符串sudo -V

【渗透笔记】Linux主机信息收集
【渗透笔记】Linux主机信息收集
【渗透笔记】Linux主机信息收集
【渗透笔记】Linux主机信息收集
【渗透笔记】Linux主机信息收集

SSH服务信息

# 使用公钥认证,认证实体具有公钥和私钥。# 私钥保存在你登录的计算机上,而公钥存储在要登录的所有计算机上的 .ssh/authorized_keys文件中cat ~/.ssh/authorized_keys
# RSA公钥会保存为 .ssh/id_rsa.pubcat ~/.ssh/id_rsa.pub
# RSA私钥会保存在你的home目录中:.ssh/id_rsacat ~/.ssh/id_rsa
# ssh会把每个你访问过计算机的公钥都存储在这个文件中cat ~/.ssh/known_hosts
# 文件identity.pub包含你的公钥,可以将其添加到其他系统的authorized_keys文件中cat ~/.ssh/identity.pub
# ssh客户端允许选择读取RSA或DSA身份验证标识(私钥)的文件cat ~/.ssh/identity
# OpenSSH SSH控制配置文件cat /etc/ssh/ssh_config
# OpenSSH SSH服务端配置文件cat /etc/ssh/sshd_config

服务状态

# 检查所有服务状态service --status-all
# 列出安装在文件系统中的所有单元systemctl -a
# 启动某个服务service servicename startsystemctl start servicename
# 停止某个服务service servicename stopsystemctl stop servicename
# 显示某个服务状态信息service servicename statussystemctl status servicename
# /etc/services将端口号映射到指定的服务cat /etc/services

安全

# 列出所有规则链iptables -L
# 删除选定规则链中的所有规则iptables -F
# -A 添加 -p 协议 -j 规则允许iptables -A INPUT -p icmp -m icmp -icmp-type 0 -j ACCEPT
# 允许来自src端口80的tcp连接iptables -A INPUT -p tcp -m tcp -sport 80 -m state -state RELATED,ESTABLISHED -j ACCEPT
# 允许从/到dst端口80的tcp连接iptables -A OUTPUT -p tcp -m tcp -dport 80 -m state -state NEW,RELATED,ESTABLISHED -j ACCEPT
# 允许来自src端口80的udp连接iptables -A INPUT -p upd -m upd -sport 53 -m state -state RELATED,ESTABLISHED -j ACCEPT
# 允许从/到dst端口53的udp连接iptables -A OUTPUT -p udp -m udp -dport 53 -m state -state NEW,RELATED,ESTABLISHED -j ACCEPT
# 允许本地主机连接到localhost:55552iptables -A OUTPUT -p tcp -m tcp –sport 55552 -s 127.0.0.1 -d 127.0.0.1 -j ACCEPTiptables -A OUTPUT -p tcp -m tcp –dport 55552 -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT 

网络

# 显示当前可用的所有接口ifconfig -a
# 显示或设置系统的主机名称hostname
# 显示系统的DNS域名dnsdomainname
# 显示网络状态netstat -antpnetstat -anup
# 显示所有运行级系统服务的运行状态信息chkconfig -list
# 列出打开的文件lsof -nPi
# 显示/操作IP路由表route -e
# 配置无线网络接口iwconfig
# 该文件是DNS域名解析的配置文件,它的格式很简单,每行以一个关键字开头,后接配置参数。resolv.conf 的关键字主要有四个,分别是:`nameserver :定义DNS服务器的IP地址cat /etc/resolv.conf
# /etc/hosts 是一个简单的文本文件,将IP地址与主机名相关联,每个IP地址一行cat /etc/hosts
# /etc/network/interfaces 文件包含网络接口配置信息cat /etc/network/interfaces
# /etc/sysconfig/network 文件用于指定有关服务器上所需网络配置的信息。cat /etc/sysconfig/network
# > /etc/networks 是一个简单的ASCII文件,描述这些网络的已知DARPA网络和符号名称。cat /etc/networks 

文件系统

#  /etc/profile 包含Linux系统环境和启动程序。它被所有的用户使用于bash,ksh,sh shellcat /etc/profile 
# /etc/bashrc 或者 /etc/bash.bashrc是全系统的bash每个交互式shell启动文件。是使用系统广泛的功能和别名cat /etc/bashrc
# 类似 /etc/profile, 但仅适用于当前用户cat ~/.bash_profile
# 打印当前用户bash命令的历史记录cat ~/.bash_history
# ~/.bashrc是存储在您的主目录$HOME中的单个每个交互式shell启动文件cat ~/.bashrc
# ~/.zshrc是存储在您的主目录$ HOME中的单个交互式shell启动文件。cat ~/.zshrc
# 文件〜/ .bash_logout不用于调用shell。当用户从交互式登录shell中退出时,它被读取并执行cat ~/.bash_logout
# 列出所有日志文件ls -al /var/log/
# 粘滞位 - 只有目录的所有者或文件的所有者可以在这里删除或重命名find / -perm -1000 -type d 2>/dev/null
# SGID(chmod 2000) - 作为组运行,而不是启动它的用户。find / -perm -g=s -type f 2>/dev/null
# SUID(chmod 4000) - 作为所有者运行,而不是启动它的用户find / -perm -u=s -type f 2>/dev/null
# 找出可写的文件夹find / -writable -type d 2>/dev/null
# 找出可写的文件夹find / -perm -222 -type d 2>/dev/null
# 找出可写的文件夹find / -perm -o w -type d 2>/dev/null
# 找出可写的文件夹find / -perm -o x -type d 2>/dev/null
# 找出可写可执行的文件夹find / ( -perm -o w -perm -o x ) -type d 2>/dev/null
# 找出可写的文件find / -xdev -type d ( -perm -0002 -a ! -perm -1000) -print

# 找出不是所有者的文件find /dir -xdev ( -nouser -o -nogroup ) -print
# SGID 或者 SUIDfind / -perm -g=s -o -perm -u=s -type f 2>/dev/null
# 在SGID或SUID(快速搜索)中查找’common’位置:/bin,/sbin,/usr/bin,/usr/ sbin,/usr/local/bin, /usr/local/sbin和其他任何*binfor i in locate -r "bin$" ; do find $i ( -perm -4000 -o -perm -2000 ) -type f 2>/dev/null; done
# 从根目录(/),SGID或SUID开始,而不是符号链接,只有3个文件夹的深度,列出更多的细节和隐藏的任何 错误(例如权限被拒绝)find / -perm -g=s -o -perm -4000 ! -type l -maxdepth 3 -exec ls -ld {} ; 2>/dev/null 

程序

crontab -l 显示标准输出上的当前触点ls -alh /var/spool/cronls -al /etc/cron*cat /etc/cron*cat /etc/cron.allowcat /etc/cron.denycat /etc/crontabcat /etc/anacrontab 
ls -la /var/spool/cron/crontabs 列出所有用户的crontab文件
cat /var/spool/cron/crontabs/root 打印root用户的crontab命令


【渗透笔记】Linux主机信息收集


【渗透笔记】Linux主机信息收集

蓝队应急响应姿势之Linux

通过DNSLOG回显验证漏洞

记一次服务器被种挖矿溯源

内网渗透初探 | 小白简单学习内网渗透

实战|通过恶意 pdf 执行 xss 漏洞

免杀技术有一套(免杀方法大集结)(Anti-AntiVirus)

内网渗透之内网信息查看常用命令

关于漏洞的基础知识

任意账号密码重置的6种方法

干货 | 横向移动与域控权限维持方法总汇

手把手教你Linux提权



欢迎关注LemonSec

觉得不错点个“赞”、“在看”哦

原文始发于微信公众号(LemonSec):【渗透笔记】Linux主机信息收集

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月9日16:47:41
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【渗透笔记】Linux主机信息收集https://cn-sec.com/archives/888838.html

发表评论

匿名网友 填写信息