【网络安全】渗透测试之linux信息收集

前言

      在内网中linux的服务器是占大多数的,主要原因分为以下几点

1.便宜,linux大多为免费的,Windows Server是收费的,对于企业来说为了节约成本,大量采用linux服务器。

2.轻便,linux主要是对服务器进行服务的,没有windows一些其他的设计,针对性更强,直接采用简易代码就可以解决问题。

3.生态,linux系统是开源的,很多问题都可以在网上找到解决方案,windows则不一样,是不开源的,对开发不那么友好。

一、linux信息收集的命令

(1)linux系统版本信息

        uname -a                #打印所有可用的系统信息
        uname -r                #内核版本信息
        uname -n                #系统主机名字
        hostname                #主机名
        uname -m                #Linux内核架构(x86/x64)
        cat /proc/version                #内核信息
        cat /etc/*-release                #发布信息
        cat /etc/issue                #发布信息
        cat /proc/cpuinfo                #CPU信息
        df -a                    #文件系统信息

(2)用户和组

cat /etc/passwd            列出系统所有用户
cat /etc/group            列出系统所有组
cat /etc/shadow            列出所有用户hash(需要root权限)
users                当前登录的用户
who -a                当前登录的用户
w                显示目前登入系统的用户有那些人,以及他们正在执行的程序
last                显示登入过的用户信息
lastlog                显示系统中所有用户最近一次登录信息
lastlog                 显示指定用户最后一次登入信息

(3)用户和权限

whoami                当前用户
id                当前用户信息
cat /etc/sudoers            可以使用sudo提升到root的用户(需要root权限)
sudo                允许普通用户执行一些或者全部的root命令的一个工具
sudo -l                列出目前用户可执行与无法执行的指令
su                切换当前用户身份到其他用户身份

(4)环境信息

env                    打印系统环境信息
set                    打印系统环境信息
echo $PATH                环境变量中的路径信息
history                    打印历史命令
pwd                    显示当前路径
cat /etc/profile                显示默认系统遍历
cat /etc/shells                显示可用的shell

(5)查询文件、查询日志

find / -perm -4000 -type f                    查找SUID的文件
find / -uid 0 -perm -4000 -type f                查找root权限的SUID文件
find / -perm -2 -type f                    找出可写的文件
find / ! -path "/proc/" -perm -2 -type f -print            查找/proc以外的可写文件
find / -perm -2 -type d                    找出可写目录
find /home –name *.rhosts -print                查找rhosts的配置文件
find /home -iname *.plan -exec ls -la {} ; -exec cat {}        查询文件并打印
ls -ahlR /root/                        查看是否有权限列用户目录
cat ~/.bash_history                    查看当前用户的历史记录
ls -la ~/.*_history                        查看当前用户的各种历史记录
ls -la ~/.ssh/                        查看用户ssh登录信息
ls -la /usr/sbin/in.*                        检查inetd服务的配置
grep -l -i pass /var/log/*.log                    查询包含pass的日志并打印匹配到的行
ls -la /etc/*.conf                        列出/etc/下的所有配置文件
lsof -i -n                            列出打开的文件
head /var/mail/root                    答应/var/mail/root的开头

(6)服务信息

ps aux                    查看进程信息
cat /etc/inetd.conf                由inetd管理的服务列表
cat /etc/xinetd.conf            由xinetd管理的服务列表
cat /etc/exports                nfs服务器的配置

(7)计划任务

crontab -l -u %username%            显示指定用户的计划作业(需要root权限)
ls -la /etc/cron*                计划任务
top                    列出当前进程

(8)网络、路由和通信

/sbin/ifconfig -a                    列出网络接口信息
cat /etc/network/interfaces                列出网络接口信息
arp -a                        查看系统arp表
route                        打印如有信息
cat /etc/resolv.conf                查看dns配置信息
netstat -an                    打印本地端口开放信息
iptables -L                    列出iptable的配置规则
cat /etc/services                    查看端口服务映射

(9)软件信息

dpkg -l                        软件安装(Debian)
rpm -qa                        软件安装(Red Hat
sudo -V                        查看sudo的版本信息
httpd -v                        查看apache的版本信息
apache2 -v                    查看apache的版本信息
apache2ctl (or apachectl) -M            列出加载的apache模块
mysql --version                    mysql的版本信息
psql -V                        Postgres数据库的版本信息
perl -v                        perl的版本信息
java -version                    java的版本信息
python --version                    python的版本信息
ruby -v                        ruby的版本信息
find / -name %program_name%            查找有用的软件
which %program_name%                查找有用的软件
cat /etc/apache2/envvars                查看运行apache的帐号

猜你喜欢

转载自blog.csdn.net/weixin_50481708/article/details/128712062