AI摘要:文章是关于BugKu PAR应急加固一的解决步骤。包括Js劫持、黑客首次webshell密码、黑客首次入侵方式、黑客服务器的信息、黑客的webshell2、mysql、黑客的账号、被篡改的命令一、二和修复js劫持等问题的解决方法。每个问题都有详细的解决步骤和相应的代码示例,以帮助读者理解和解决这些问题。

BugKu PAR 应急加固一

一、Js劫持

直接访问服务器IP,发现titlexxxx二手交易市场,随后跳转,跳转后的网页就是第一题flag,注意末尾删除\

QQ截图20240303115906

flag:https://www.194nb.com

二、 黑客首次webshell 密码

  1. 查看/var/log/nginx/access.log找到上传的php文件

QQ截图20240303122142

然后找到密码: QjsvWsp6L84Vl9dRTTytVyn5xNr1

  1. 直接到/var/www/html/public/Uploads找到可疑文件6127418cad73c.php查看内容找到密码

flag:QjsvWsp6L84Vl9dRTTytVyn5xNr1

三、 黑客首次入侵方式

通过上面我们得到了攻击者的ip地址:123.139.39.161,直接在日志中搜索,审查日志发现是XSS

QQ截图20240303124219

flag:XSS

四、 黑客服务器的信息

查看服务器进程:

ps -aux

发现www-data有个1.sh脚本在运行

QQ截图20240303124652

查看发现是个反弹shell

QQ截图20240303124754

flag:49.232.241.253:8888

五、 黑客的webshell2

继续审查nginx日志,已知第一个webshell6127418cad73c.php我们可以借助awk处理日志

awk '/\.php/ && !/6127418cad73c\.php/ {print $0}' access.log

找到含有.*.php的行,且不是6127418cad73c.php

QQ截图20240303130758

发现有个/static/img/1.php查看

QQ截图20240303131137

找到flag: flag{5t945bbwxokj87f1ucjb2vc7zdnf8ix3}

六、 mysql

查看/var/www/html/application/database.php得到

<?php
// +----------------------------------------------------------------------
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
// +----------------------------------------------------------------------
// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: liu21st <liu21st@gmail.com>
// +----------------------------------------------------------------------

return [
    // 数据库类型
    'type'            => 'mysql',
    // 服务器地址
    'hostname'        => '127.0.0.1',
    // 数据库名
    'database'        => 'aman',
    // 用户名
    'username'        => 'root',
    // 密码
    'password'        => '123456',
    // 端口
    'hostport'        => '',
    // 连接dsn
    'dsn'             => '',
    // 数据库连接参数
    'params'          => [],
    // 数据库编码默认采用utf8
    'charset'         => 'utf8',
    // 数据库表前缀
    'prefix'          => 'aman_',
    // 数据库调试模式
    'debug'           => true,
    // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
    'deploy'          => 0,
    // 数据库读写是否分离 主从式有效
    'rw_separate'     => false,
    // 读写分离后 主服务器数量
    'master_num'      => 1,
    // 指定从服务器序号
    'slave_no'        => '',
    // 自动读取主库数据
    'read_master'     => false,
    // 是否严格检查字段是否存在
    'fields_strict'   => true,
    // 数据集返回类型
    'resultset_type'  => 'array',
    // 自动写入时间戳字段
    'auto_timestamp'  => !true,
    // 时间字段取出后的默认时间格式
    'datetime_format' => 'Y-m-d H:i:s',
    // 是否需要进行SQL性能分析
    'sql_explain'     => false,
];

连接数据库

mysql -u root -p

查看当前MySQL版本

mysql> SELECT version();
+-------------------------+
| version()               |
+-------------------------+
| 5.5.62-0ubuntu0.14.04.1 |
+-------------------------+
1 row in set (0.00 sec)

后续参考BugKu -- PRA -- 应急加固1_bugku应急加固1-CSDN博客需要回收用户的file权限并关闭全局日志功能

revoke file on *.* from 'root'@'localhost';
set global general_log = off;
flush privileges;

七、黑客的账号

查看cat /etc/passwd发现用户aman

QQ截图20240303133132

userdel -r aman

删除该用户

八、被篡改的命令一、二

查看/bin目录,发现psls命令下面有一个类似的ps_ls2

rm ps 
mv ps_ ps
rm ls 
mv ls2 ls

# 根据wp删除之前找到的webshell2
rm /var/www/html/public/static/img/1.php

九、修复js劫持

进入/var/www/html,运行

root@iZuf6chotfate198s5e8j8Z:/var/www/html# find . | xargs grep -ri '<script type="text/javascript">' -l | sort | uniq -c
      6 ./application/home/view/public/js.html
      4 ./runtime/temp/7989650828d8c92a2cbbbcbe7c322c03.php
      4 ./runtime/temp/ba0546f2ed29bcb24fbace34b295ef45.php
      4 ./thinkphp/tpl/dispatch_jump.tpl
      4 ./thinkphp/tpl/page_trace.tpl

查看./application/home/view/public/js.html删除混淆的js代码