码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • AWD常见防御加固手段


    目录

    一、加固用户名密码(用户层)

    1、修改linux用户密码

    2、删除其他可登录用户

    二、加固SQL数据库(服务层)

    1、修改mysql密码

    2、删除匿名用户

    3、刷新配置

    4、改网站后台密码

    三、后门文件查杀

    四、关闭shell连接进程

    五、处理新增文件与不死马

    1、查看新增文件,删掉

    2、删除不死马(rm -f 无法删除)

    (1)创建一个脚本

    (2)加权777(最高权限)

    (3)在后台不断运行该脚本

    六、弱口令与内核溢出提权


    一、加固用户名密码(用户层)

    1、修改linux用户密码

    使用命令 

    passwd

    输入之后根据提示修改密码即可 

    2、删除其他可登录用户

    使用命令查看/etc/passwd 文件

    cat /etc/passwd

    第一个字段显示用户名,第二个字段显示密码状态,如果是 x,则表示密码存储在 /etc/shadow 文件中,第三个字段显示用户 ID,第四个字段显示组 ID;

    后面字段依次显示:存储用户信息、主目录的路径、用户的 shell

    这里我们配合grep命令查询可登录用户:

    cat /etc/passwd |grep bash #有bash表示用户可以登录

    我这里只是以自己服务器为例做演示,实际比赛环境肯定不止有root一个可登录用户,并且比赛给我们的账号密码是一个低权限用户,用于访问服务器,一般为非root权限。


    如果有权限就删除用户:

    userdel -r 用户名

    二、加固SQL数据库(服务层)

    1、修改mysql密码

    进入mysql数据库:

    mysql -uroot -proot

    修改mysql数据库密码:

    update mysql.user set password=password('新密码') where user='root';

    #password为加密方式,不以明文存储,也可以使用md5('新密码')
    改了之后查一下:

    select host,user,password from mysql.user;

    我这里是以自己Windows的mysql数据库演示,所以有些东西不太一样 

     

    这里的host表示可以登录的ip地址

    2、删除匿名用户

    注意:默认会存在匿名用户登录(user为空的用户),我们需要删掉它:

    delete from mysql.user where user='';

    3、刷新配置

    完成之后我们刷新设置:

    flush privileges;

    4、改网站后台密码

    从网站页面或者源码或者目录扫描工具找到后台页面,然后尝试弱口令登入后改管理员密码。

    三、后门文件查杀

    将D盾、河马扫到的后门文件全部删掉

    假设后门文件名为shell.php

    rm -f  shell.php #直接跟文件名要在文件所在当前路径进行

     

    或者echo一个空值进去使后门文件为空,

    echo >shell.php

     

    四、关闭shell连接进程

    使用who命令查看已经登录的账号:

    将不是自己队伍ip地址的用户踢掉:

    pkill -kill -t pts/进程号

    五、处理新增文件与不死马

    1、查看新增文件,删掉

    find ./ -cmin -30  #查看30分钟内创建的文件,./表示当前目录下

    使用命令 rm -f 删掉

    2、删除不死马(rm -f 无法删除)

    (1)创建一个脚本

    vim killshell.sh

    内容:

    1. #!/bin/bash
    2. while true 
    3. do
    4. kill -9 进程ID
    5. rm -rf shell.php
    6. done

    一直循环删除

    查看进程ID使用命令:

    top | grep httpd

    (2)加权777(最高权限)

    chmod 777 killshell.sh

    (3)在后台不断运行该脚本

    nohup ./killshell.sh &  

    进行相关查看:

    ps -aux | grep killshell.sh
    ls shell.php
    cat nohup.out

    六、弱口令与内核溢出提权

    若能从user用户提权到root(可能存在内核溢出提权)或者root用户存在弱口令toor

    提权到root用户后,上传我们的payload文件

    chmod 777 payload
    ./payload

    删掉flag

    rm -rf /bin/curl


     

  • 相关阅读:
    【NLP】使用 BERT 和 PyTorch Lightning 进行多标签文本分类
    浅谈GPT在数据库重构项目中的创新应用
    【开发小记】vuex存储用户信息
    【深度学习环境】windows平台
    计算多张图片的移位距离
    什么是IT服务台?
    移动应用-Android-开发指南
    【JavaSE】认识异常(上篇)
    通过云速搭CADT实现云原生分布式数据库PolarDB-X 2.0的部署
    相机存储卡不小心格式化怎么恢复呢?
  • 原文地址:https://blog.csdn.net/Myon5/article/details/133603716
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号