0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Linux信息收集和内网渗透

哆啦安全 来源:Z2O安全攻防 作者:Z2O安全攻防 2022-11-11 09:06 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Linux信息收集

本机基本信息

#管理员
$普通用户
@之前表示登录的用户名称,之后表示主机名,再之后表示当前所在目录
/表示根目录
~表示当前用户家目录

1、内核,操作系统和设备信息

uname-a打印所有可用的系统信息
uname-r内核版本
uname -n 系统主机名。
uname-m查看系统内核架构(64位/32位)
hostname系统主机名
lsb_release-a发行版信息
cat/proc/version内核信息
cat/etc/*-release发行版信息
cat/etc/issue发行版信息
cat/proc/cpuinfoCPU信息
2a0cdffe-6159-11ed-8abf-dac502259ad0.png2a1cdd46-6159-11ed-8abf-dac502259ad0.png

2、用户和群组

cat/etc/passwd列出系统上的所有用户
cat/etc/shadow查看用户Hash
cat/etc/group列出系统上的所有组
groups当前用户所在的组
groupstesttest用户所在的组
getentgroupxxxxxx组里的用户

grep-v-E"^#"/etc/passwd|awk-F:'$3==0{print$1}'列出所有的超级用户账户
awk-F:'length($2)==0{print$1}'/etc/shadow#查看是否存在空口令用户
awk'/$1|$6/{print$1}'/etc/shadow#查看远程登录的账号

whoami查看当前用户
w谁目前已登录,他们正在做什么
who命令用于显示系统中有哪些使用者正在上面
last最后登录用户的列表
lastlog所有用户上次登录的信息
lastlog–u%username%有关指定用户上次登录的信息
2a30e692-6159-11ed-8abf-dac502259ad0.png

[^可以看到yokan用户在sudo组里]:

2a4b6a58-6159-11ed-8abf-dac502259ad0.png2a574ca6-6159-11ed-8abf-dac502259ad0.png

3、用户和权限信息

whoami当前用户名
id当前用户信息
cat/etc/sudoers可以使用sudo提升到root的用户
sudo-l当前用户可以以root身份执行操作
2a6276ee-6159-11ed-8abf-dac502259ad0.pngimage-202201191805379062a75c816-6159-11ed-8abf-dac502259ad0.pngimage-20220128144449999

yokan用户可以以root身份执行任意操作

4、环境信息

env显示所有的环境变量
set显示本地环境变量
echo$PATH环境变量中的路径信息
export[-fnp][变量名称]=[变量设置值]显示和设置环境变量
pwd输出工作目录
cat/etc/profile显示默认系统变量
cat/etc/shells显示可用的shell
ls-la/etc/*.conf查看etc下所有配置文件
2a7d15c6-6159-11ed-8abf-dac502259ad0.pngimage-20220119181617068

5、历史命令

显示当前用户的历史命令记录

history
cat~/.bash_history

#查看其他用户的历史命令文件
cat/home/user/.bash_history

history显示内存和~/.bash_history中的所有内容;内存中的内容并没有立刻写入~/.bash_history,只有当当前shell关闭时才会将内存内容写入shell

6、进程信息

psaux以用户的格式显示所有进程,包括非终端的进程
ps-ef显示所有进程,显示UID,PPIP(父进程),C与STIME栏位
ps-ef|grepjava查询某个应用的所有进程信息
top实时显示占用最多的进程
2a90b6ee-6159-11ed-8abf-dac502259ad0.png

如果想查看进程的CPU占用率和内存占用率,可以使用aux

如果想查看进程的父进程ID和完整的COMMAND命令,可以使用-ef

lsof-c$PID查看进程关联文件
/proc/$PID/cmdline完整命令行信息
/proc/$PID/comm进程的命令名
/proc/$PID/cwd进程当前工作目录的符号链接
/proc/$PID/exe运行程序的符号链接
/proc/$PID/environ进程的环境变量
/proc/$PID/fd进程打开文件的情况

7、服务信息

cat/etc/services查询存在的服务
cat/etc/services|grepJava查询对应的服务
systemctllist-units--type=service--state=running查询已经开启的服务
2aa8897c-6159-11ed-8abf-dac502259ad0.png

8、计划任务

在Linux系统中,计划任务一般是由cron承担。cron启动后,它会读取它的所有配置文件(全局性配置文件/etc/crontab,以及每个用户的计划任务配置文件),然后cron会根据命令和执行时间来按时来调用工作任务。

/var/spool/cron/crontabs :这个目录以账号来区分每个用户自己的执行计划
/etc/crontab :系统执行计划,需要在后边加上用户格式
所有计划任务项:
/var/spool/cron/*
/var/spool/anacron/*
/etc/crontab
/etc/anacrontab
/etc/cron.*
/etc/anacrontab
crontab-l查询当前用户所有的计划任务
crontab-l-uuser查询指定用户的计划任务
cat/var/spool/cron/crontabs/root查询root用户的计划任务

9、网络、路由和通信

查询ip

ifconfig
ipaddr

打印路由信息

route查询路由表
route-n查询路由表,以ip地址显示
netstat-r查询路由表
ipro

查看系统arp表

arp-a

端口开放情况

netstat-antup所有端口
netstat-antptcp端口
netstat-anupudp端口

查看端口服务映射

cat/etc/services

列出iptables的配置规则

iptables-L

显示网卡信息

netstat-i

dns信息

cat/etc/resolv.conf查看dns配置信息
dnsdomainname-V打印DNS系统中FQDN名称中的域名
cat/etc/hosts查看hosts域名解析文件

10、已安装应用

rpm-qa--last#Redhat、CentOS
rpm-qapolkit#查看指定应用的安装版本

dpkg-l#ubuntu、debian
dpkg-lpolicykit-1#查看指定应用的安装版本
dpkg-Lxxx#查询某个软件所关联的文件

11、查找能写或执行的目录

find/-writable-typed2>/dev/null
find/-perm-o+w-typed2>/dev/null
find/-perm-o+x-typed2>/dev/null

12、防火墙

iptables-L查看防火墙配置

查看防火墙状态:
systemctlstatusfirewalld
serviceiptablesstatus
暂时关闭防火墙:
systemctlstopfirewalld
serviceiptablesstop
永久关闭防火墙:
systemctldisablefirewalld
chkconfigiptablesoff
重启防火墙:
systemctlenablefirewalld
serviceiptablesrestart

13、敏感文件

find命令 -o参数 表示或者的意思

find/-typef-iname"*.bash_history"-o-iname"*config*"-o-iname"web.xml"-o-iname"*database*"-o-iname"*pass*"2>/dev/null

查找SSH密钥:

find/-name"id_dsa*"-o-name"id_rsa*"-o-name"known_hosts"-o-name"authorized_hosts"-o-name"authorized_keys"2>/dev/null|xargs-rls

Web应用服务

常见配置文件路径:

/apache/apache/conf/httpd.conf
/apache/apache2/conf/httpd.conf
/apache/php/php.ini
/bin/php.ini
/etc/apache/apache.conf
/etc/apache/httpd.conf
/etc/apache2/apache.conf
/etc/apache2/httpd.conf
/etc/apache2/sites-available/default
/etc/apache2/vhosts.d/00_default_vhost.conf
/etc/httpd/conf.d/httpd.conf
/etc/httpd/conf.d/php.conf
/etc/httpd/conf/httpd.conf
/etc/httpd/php.ini
/etc/init.d/httpd
/etc/php.ini
/etc/php/apache/php.ini
/etc/php/apache2/php.ini
/etc/php/cgi/php.ini
/etc/php/php.ini
/etc/php/php4/php.ini
/etc/php4.4/fcgi/php.ini
/etc/php4/apache/php.ini
/etc/php4/apache2/php.ini
/etc/php4/cgi/php.ini
/etc/php5/apache/php.ini
/etc/php5/apache2/php.ini
/etc/php5/cgi/php.ini
/etc/phpmyadmin/config.inc.php
/home/apache/conf/httpd.conf
/home/apache2/conf/httpd.conf
/home/bin/stable/apache/php.ini
/home2/bin/stable/apache/php.ini
/NetServer/bin/stable/apache/php.ini
/opt/www/conf/httpd.conf
/opt/xampp/etc/php.ini
/PHP/php.ini
/php/php.ini
/php4/php.ini
/php5/php.ini
/usr/lib/php.ini
/etc/nginx/nginx.conf
/usr/lib/php/php.ini
/usr/local/apache/conf/httpd.conf
/usr/local/apache/conf/php.ini
/usr/local/apache2/conf/httpd.conf
/usr/local/apache2/conf/php.ini
/usr/local/etc/php.ini
/usr/local/httpd/conf/httpd.conf
/usr/local/lib/php.ini
/usr/local/php/lib/php.ini
/usr/local/php4/lib/php.ini
/usr/local/php4/lib/php.ini
/usr/local/php4/php.ini
/usr/local/php5/etc/php.ini
/usr/local/php5/lib/php.ini
/usr/local/php5/php5.ini
/usr/local/share/examples/php/php.ini
/usr/local/share/examples/php4/php.ini
/usr/local/Zend/etc/php.ini
/var/apache2/config.inc
/var/httpd/conf/httpd.conf
/var/httpd/conf/php.ini
/var/httpd/conf/php.ini
/var/local/www/conf/httpd.conf
/var/local/www/conf/php.ini
/var/www/conf/httpd.conf
/web/conf/php.ini
/www/conf/httpd.conf
/www/php/php.ini
/www/php4/php.ini
/www/php5/php.ini
/xampp/apache/bin/php.ini
/xampp/apache/conf/httpd.conf

数据库

/etc/init.d/mysql
/etc/my.cnf
/etc/mysql/my.cnf
/etc/mysql/my.cnf
/var/lib/mysql/my.cnf
/var/lib/mysql/mysql/user.MYD
/usr/local/mysql/bin/mysql
/usr/local/mysql/my.cnf
/usr/share/mysql/my.cnf

自动化脚本

linux_info.sh

#!/bin/bash

#输出文件
filename=$(date+%s)'.log'

echo"信息收集"
echo-e"
"|tee-a$filename
echo"账户信息收集"|tee-a$filename
cat/etc/passwd|tee-a$filename
echo-e"
"|tee-a$filename
echo"shadow"|tee-a$filename
cat/etc/shadow|tee-a$filename
echo-e"
"|tee-a$filename
echo"进程信息收集"|tee-a$filename
psaux|tee-a$filename
echo-e"
"|tee-a$filename
echo"网络连接"|tee-a$filename
netstat-antlp|tee-a$filename
echo-e"
"|tee-a$filename
echo"当前用户:"$(whoami)2>/dev/null|tee-a$filename
echo-e"
"|tee-a$filename
echo"端口监听"|tee-a$filename
netstat-lnpt|tee-a$filename
echo-e"
"|tee-a$filename
echo"可登陆用户"|tee-a$filename
cat/etc/passwd|grep-E-v'nologin$|false'|tee-a$filename
echo-e"
"|tee-a$filename
echo"增加用户的日志"|tee-a$filename
grep"useradd"/var/log/secure|tee-a$filename
echo-e"
"|tee-a$filename
echo"History操作提取"|tee-a$filename
cat~/.*history|tee-a$filename
echo-e"
"|tee-a$filename
echo"登录成功的IP"|tee-a$filename
grep"Accepted"/var/log/secure*|awk'{print$11}'|sort|uniq-c|sort-nr|more|tee-a$filename
echo-e"
"|tee-a$filename
echo"查看路由表"|tee-a$filename
route-n|tee-a$filename
echo-e"
"|tee-a$filename
echo"查看SSHkey"|tee-a$filename
sshkey=${HOME}/.ssh/authorized_keys
if[-e"${sshkey}"];then
cat${sshkey}|tee-a$filename
else
echo-e"SSHkey文件不存在
"|tee-a$filename
fi
echo-e"
"|tee-a$filename
echo"查看known_hosts"|tee-a$filename
cat~/.ssh/known_hosts|tee-a$filename
echo-e"
"|tee-a$filename
echo"查找WEB-INF"|tee-a$filename
find/-name*.properties2>/dev/null|grepWEB-INF|tee-a$filename
echo-e"
"|tee-a$filename
echo"user|pass|pwd|uname|login|db_"|tee-a$filename
find/-name"*.properties"|xargsegrep-i"user|pass|pwd|uname|login|db_"|tee-a$filename
echo-e"
"|tee-a$filename
echo"jdbc:|pass=|passwd="|tee-a$filename
find/-regex".*.properties|.*.conf|.*.config|.*.sh"|xargsgrep-E"=jdbc:|pass=|passwd="|tee-a$filename
echo-e"
"|tee-a$filename
#Authorcances
echo"ip和网卡信息"|tee-a$filename
ipa|awk'{print$2,$4}'|tee-a$filename
echo-e"
"|tee-a$filename
echo"可登陆用户"|tee-a$filename
cat/etc/passwd|grep-E-v'sync$|halt$|nologin$|false|shutdown'|tee-a$filename
echo-e"
"|tee-a$filename
echo"用户登陆日志"|tee-a$filename
lastlog|tee-a$filename
echo-e"
"|tee-a$filename
echo"查看hosts"|tee-a$filename
cat/etc/hosts|tee-a$filename
echo-e"
"|tee-a$filename
echo"查看系统版本"|tee-a$filename
cat/etc/*-release|tee-a$filename
echo-e"
"|tee-a$filename
echo"查看内核版本"|tee-a$filename
uname-mrs|tee-a$filename

审核编辑:郭婷


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    88

    文章

    11627

    浏览量

    217912

原文标题:Linux内网渗透基础篇

文章出处:【微信号:哆啦安全,微信公众号:哆啦安全】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    内网穿透:从原理到实战部署

    本文介绍了内网穿透技术的原理及其应用解决方案。由于NAT网络和动态IP的限制,外部无法直接访问内网设备。内网穿透通过公网中转服务器建立连接通道,实现外部访问内网服务。文章详细讲解了Ze
    的头像 发表于 11-04 16:57 1251次阅读
    <b class='flag-5'>内网</b>穿透:从原理到实战部署

    内网穿透的多种使用场景:远程办公、IoT 设备管理全解析

    你是否也曾这样“抓狂”过? ● 假期出游,突然需要公司内网的一份文件,却无可奈何? ● 给客户演示项目,还得求着运维同事帮忙部署到外网服务器? ● 想在外面看看家里的宠物,却发现摄像头无法远程连接
    的头像 发表于 10-11 15:44 272次阅读
    <b class='flag-5'>内网</b>穿透的多种使用场景:远程办公、IoT 设备管理全解析

    SSH 远程连接内网 Linux 服务器

    利用 ZeroNews,您可对用内网Linux 服务器进行统一的 SSH 远程连接管理,当用户外出时,可通过 ZeroNews 分配的公网域名地址,快速访问企业内部、家庭的 Linux
    的头像 发表于 09-17 19:52 277次阅读
    SSH 远程连接<b class='flag-5'>内网</b> <b class='flag-5'>Linux</b> 服务器

    内网线能用在室外吗

    内网线一般不建议直接用于室外环境,但可通过特定处理或选择专用室外网线实现室外应用。以下是详细分析: 一、室内网线用于室外的潜在问题 物理防护不足 外皮材质:室内网线外皮多为PVC(聚氯乙烯),耐候
    的头像 发表于 09-12 09:58 646次阅读
    室<b class='flag-5'>内网</b>线能用在室外吗

    为什么内网穿透必须加密?

    对于企业而言,选择支持 TLS 加密的内网穿透工具(如ZeroNews),并定期更新加密协议与证书,是保障业务安全、避免法律风险的最有效手段。
    的头像 发表于 08-19 15:47 543次阅读
    为什么<b class='flag-5'>内网</b>穿透必须加密?

    远程访问内网MySQL数据库?这个方案更简单

    各位开发者朋友们,是否还在为无法随时随地访问内网MySQL数据库而烦恼?今天分享一个超实用的方法,通过容器部署 MySQL 结合 ZeroNews 内网穿透,让你在任何地方都能安全访问和管理数据库
    的头像 发表于 07-04 18:06 646次阅读
    远程访问<b class='flag-5'>内网</b>MySQL数据库?这个方案更简单

    【Banana Pi BPI-RV2开发板试用体验】部署内网穿透

    BPI-RV2 RISC-V开源路由器之部署内网穿透 背景 最近刚弄到一块 BPI-RV2 RISC-V 开源路由器,刚好自己有个云服务器和公网IP,打算在openwrt上面部署frp来做内网穿透
    发表于 06-29 20:05

    Linux系统查看及修改设备型号信息,触觉智能RK3562开发板演示

    本文介绍Linux系统如何查看及修改设备型号信息的方法,适用于想查看设备型号信息或者想将设备型号信息修改为自己项目的名称的情况。触觉智能RK3562开发板演示。查看设备
    的头像 发表于 06-19 15:58 808次阅读
    <b class='flag-5'>Linux</b>系统查看及修改设备型号<b class='flag-5'>信息</b>,触觉智能RK3562开发板演示

    如何配置Linux防火墙和Web服务器

    在当今数字化时代,网络安全显得尤为重要。Linux作为一种开源操作系统,广泛应用于服务器管理和网络配置中。本篇文章将详细介绍如何配置Linux防火墙和Web服务器,确保内网与外网的安全访问。同时,我们将探讨如何通过SSH远程管理
    的头像 发表于 05-24 15:26 1634次阅读
    如何配置<b class='flag-5'>Linux</b>防火墙和Web服务器

    这么多内网穿透工具怎么选?一篇让你不再纠结的终极指南!

    你是否遇到过这样的场景? 在家想访问公司的内网服务器,却发现防火墙拦得死死的? 开发微信小程序,本地调试却因为无公网IP而抓狂? 想搭建个人NAS,但运营商不给公网IP,远程访问成难题? 别慌!内网
    的头像 发表于 05-13 16:06 889次阅读
    这么多<b class='flag-5'>内网</b>穿透工具怎么选?一篇让你不再纠结的终极指南!

    国产内网穿透方案-比frp更简单

    内网穿透技术凭借其便捷的互联互通能力,已成为众多个人用户与企业实现跨网络访问的主流解决方案。相较于传统专线网络,内网穿透方案无需依赖公网IP资源,部署流程简单高效,且方案灵活性显著,能快速适配多样化
    的头像 发表于 05-13 11:28 480次阅读
    国产<b class='flag-5'>内网</b>穿透方案-比frp更简单

    安全检测 高效合规 | 经纬恒润重磅推出PeneTrix渗透测试平台

    在汽车智能化进程加速的今天,汽车电子控制系统(ECU)开发与信息安全合规性验证正面临三重挑战:法规更新频繁、威胁场景日益复杂、传统渗透测试流程耗时费力。面对这些难题,经纬恒润基于多年的研发经验与技术
    的头像 发表于 03-17 17:04 1040次阅读
    安全检测 高效合规 | 经纬恒润重磅推出PeneTrix<b class='flag-5'>渗透</b>测试平台

    华为LampSite X全面引领室内网络数智化升级

    在通信技术与移动 AI 产业迅猛发展的当下,优质的室内网络已成为保障用户随时随地畅享丝滑体验的基石。华为室内数字化解决方案 LampSite X,凭借卓越的技术优势与丰富的商用实践,正引领室内网络迈入全新的智能化时代。
    的头像 发表于 03-03 11:45 1072次阅读

    信息安全管理必备!Linux系统使用SSH登录root账号的方法

    Linux远程管理信息安全必备!本文介绍各类Linux开发板/主板使用SSH登录root账号的方法,使用触觉智能RK3562开发板演示,关注触觉智能,持续为大家带来更多使用技巧!
    的头像 发表于 02-12 15:46 1114次阅读
    <b class='flag-5'>信息</b>安全管理必备!<b class='flag-5'>Linux</b>系统使用SSH登录root账号的方法

    Web安全之渗透测试基础与实践

    在网络安全领域,Web渗透测试是发现Web应用漏洞的重要手段。下面介绍渗透测试的基础和实践。 信息收集渗透测试的第一步。使用whois命令
    的头像 发表于 01-22 09:33 648次阅读