
服务器取证
- xxcdu
- Application , Data
- May 8, 2022
Table of Contents
centos等操作系统可以通过按alt键加1、2、3来切换不同的shell窗口。
1、框架搭建的网站,配置文件、后台入口进入方式等直接百度搜之。
2、php经典开发设计模式MVC(例如thinkphp等):三个文件夹: controller(协调model和view之间的交互)、model(数据和业务逻辑,并提供数据访问api给controller)、view。主要看controller。
3、宝塔面板:
服务器根目录下有www目录,则多半是宝塔面板
宝塔面板重构中,找到了嫌疑人导出的数据库文件备份后,如果格式是.php格式,则是从phpmyadmin导出的,需要将后缀改为.sql再从phpmyadmin导入。
若服务器主机中的日志如history等被删除,宝塔面板中也可以查看面板日志获取所需信息。
找根目录时,如果是java做的网站,可以试试找启动脚本如start.sh等,通过其中信息来确定根目录。
4、虚拟化服务器ESXi:用弘连取证加载后,可以在分区中找vmx文件分别添加为新证据文件进行解析。但在esxi终端将虚拟机注册进虚拟服务器进行管理时可能会导致安装时间这个参数变成做题的这天的时间。记得在将ip改为动态设置之前记住改之前的静态ip地址,不然原ip就无了。
5、linux单用户绕密:绝大多数linux发行版支持单用户绕密,启动grub菜单按e编辑。
(1)centos7:1.启动系统在GRUB2启动屏按“↑↓”键停留在此界面,按下“e”键进入编辑模式 -> 2.在编辑界面找到linux16 一行,将 “ro” 修改为 “rw init=/sysroot/bin/sh”, 然后按ctrl+x进入系统 -> 3.输入chroot /sysroot,来修改目录,获取root权限,然后即可修改root密码 -> 4.使用passwd root修改root密码,输入两遍 -> 5.需要使修改的密码生效,输入touch /.autorelabel即可,然后reboot重启。
(2)ubuntu:1.在启动时按下 SHIFT + ESC 键,进入 GRUB 引导加载器页面 -> 2.选择advanced options for ubuntu -> 3.按e编辑,找到linux磁盘那一行(即有ro那一行),将ro后面的内容改成systemd.unit=rescue.target,Ctrl+X -> 4.选择recovery mode -> 5.进入root,输入passwd修改root密码即可。
(3)启动grub菜单,找到linux16行添加re.break console=tty0
root:/# mount -o remount,rw /sysroot #以可读写方式重新挂载根系统
root:/# chroot /sysroot #切换到根系统
root:/# passwd root #改密码
root:/# touch /.autorelable #标记下一次启动重做SElinux标签
root:/# reboot
(4)拿到shadow文件后可以通过hashcat等方式破解,kali里也内置了join可以用于破解。
(5)若建材没有绕秘权限,则可再找一个linux虚拟机,挂载上建材的系统盘,给shadow可写权限并修改shadow文件。
6、java网站:
(1)查看jar包结构,一般内含三个文件夹:BOOT-INF ; META-INF ; org,主要关注BOOT。classess文件夹内有配置文件(一般名为application.properties或者.yml等,一般是application开头),内有数据库用户名、密码、后台入口、后台端口等,重建时将其中的数据库ip改成本地地址(最好为127.0.0.1)。通过java -jar jar包名命令启动起来。
(2)很多java网站都会有shell脚本可以直接启动网站等操作,可以查查history。
(3)有了数据库所在主机、知道远程数据库用户密码后可以在本机用navicate连接一下数据库找找线索。例如问加密特征,可以直接在数据中翻密码,把密码投给大模型。
(4)找密码的盐值时可以在jadx里打开jar包,搜索pwdupdatestate、encry、encrypassword、salt等字段。搜加密都可以尝试找到encrypt。
7、spring boot:
(1)springboot重要文件:
POM.XML Maven配置文件:查java版本、包名;
application.* 网站核心配置文件,修改数据库连接参数
java源码文件夹 controller文件夹:资源请求,可以找到service文件夹。service文件夹:内部处理,可进行网站绕密(逆向->修改->编译)
resouces 资源文件夹,内含图片等。
(2)有源码情况下的spring boot部署
(3)无源码、有jar包spring boot部署:
vue项目打包命令:cnpm run build,执行后会在 Vue 项目下会生成一个 dist 目录,该目录一般包含 index.html 文件及 static 目录,static 目录包含了静态文件 js、css 以及图片目录 images。
8、查看服务器操作历史记录时,注意查看有哪些用户。每个用户有各自的操作记录,存放在其家目录的.bash_history文件中。
9、连接网站mysql数据库:
(1)可以通过netstat -lntp等命令查看端口号,find搜索my.cnf文件查看数据库地址、用户账号密码、数据库名等信息。
(2)mysql绕密(远勘中慎用):创建一个mysql数据库的远程连接用户
# service mysql stop #关闭mysql
# mysql_safe --skip-grant-tables & #安全模式,跳过授权表
# Mysql #登录mysql
# flush privileges; #刷新一次mysql权限相关表防止mysql报错
# grant all privileges on *.* to '用户名'@'%' identified by '密码' with grant option; #创建远程连接用户账号密码
# flush privileges;
service mysqld start
(3)mysql binlog日志:
mysql日志在宝塔面板中默认开启。其他的可在配置文件中查看是否开启,查看log-bin字段,若为log-bin=mysql-bin,则开启。
windows配置文件默认路径:C:\programdata\mysql\mysql server x.x/my.ini
linux配置文件默认路径: /etc/my.cnf
查看日志:通过工具mysqlbinlog.exe对日志进行二进制解密。