• linux日志管理

1. 检查系统帐号安全

(1) /etc/passwd

(2) /etc/shadow

(3) 特权用户(uid==0)

awk -F: ‘$3==0{print $1}’ /etc/passwd

(4) 可远程登录的帐号

awk ‘/\$1|\$6/{print $1}’ /etc/shadow

2. History历史命令

(1) .bash_history文件

3. 端口、进程

(1) netstat -antlp|more

(2) file /proc/$PID/exe

(3) ps aux | grep pid

4. 开机启动项

(1) 在/etc/init.d

5. 计划任务

(1) crontab -l

(2) /var/spool/cron/*

(3) /etc/crontab

(4) /etc/cron.d/*

(5) /etc/cron.daily/*

(6) /etc/cron.hourly/*

(7) /etc/anacrontab

(8) …

There were 13 failed login attempts since the last successful login.

远程登录linux服务器的时候偶尔会看到这样的提示,说明有人/程序在偷偷的尝试登录你的服务器。

对于这种情况,有必要排查系统是否已经被人成功的远程登录了。

  • 使用lastlog命令查询各个用户最后一次的登录时间,

    检查是否有可疑的用户登录

    检查上次的登录时间

    last

    使用last命令可以检查用户的登录历史

    Last searches back through the file /var/log/wtmp (or the file designated by the -f flag) and displays a list of all users logged in (and out) since that file was created.

  • lastb

    使用lastb命令可以检查用户登录失败的历史

    Lastb is the same as last, except that by default it shows a log of the file /var/log/btmp, which contains all the bad login attempts.

    不管是/var/log/wtmp,还是 /var/log/btmp,系统每隔一段时间会备份一次并清空。备份的文件都会放在/var/log/目录下。备份时间应该是可以设定的,我的系统是1个月。对于我这种情况,如果异常登录发生在月初,有必要使用-f参数加载上个月的日志检查一下

    补充一下,上面说的备份时间在/etc/logrotate.conf这个文件中设定,具体的帮助见man logrotate

  • 检查服务器的负荷,使用top命令

    服务器被黑之后,可能会被偷偷用于挖矿等各种CPU密集型的业务。服务器负荷一般是比较稳定的,如果发现负荷比正常大了,就得去检查有没有什么可疑的进程了。对于这种情况,往往程序会向骇客自己的服务器回传消息,检查异常的网络连接一般可以发现。

    lsof -i

    检查所有的网络连接

    netstat -nltp

    检查所有的监听端口,对于黑别人的机器作为服务端,情况应该比较少见。

    之前遇到过一次这种情况,服务器的负荷突然增加,检查发现了一个从未用过的用户的登录记录,以及一个可疑的进程。大体分析了一下,应该是一个挖矿程序。通过rsync向自己的服务器回传消息。至于为什么我的服务器被黑之后还可以登录,大概是因为他只拿到了那个用户的权限,没法进一步提权吧

发现可疑的进程ID后,如何确定程序所在的目录以及命令入口?

  • 通过PID获取用户的工作目录和命令行参数

    /proc/<PID>目录下

    - `cwd`是指向工作程序目录的软链接
    - `exe`是工作程序的软链接
    - `cmdline`里面的内容是程序的命令行参数
  • 通过PID获取程序监听的端口

    $ sudo netstat -nltp | grep <pid>

  • 检查占用端口的程序

    $ sudo lsof -i :<port>

对于频繁尝试登录服务器的IP地址,可以将其添加到/etc/hosts.deny中。

  • 内核提权
  • Windows下的几种提权方式(具体做法);命令提示符下建立新的Windows用户以及提权

使用命令给windows用户提权
创建与提权
功打开虚拟终端后,首先使用命令“ipconfig”,查看网站服务器的IP地址。
接下来,我们使用“whoami”命令查看当前用户。
然后使用“net user”命令,查看网站服务器上的用户账户。
使用命令“net user hack hack /add”,添加一个用户名为hack,密码为hack的用户到网站服务器。
使用“net user”命令查看,hack用户添加成功。
使用命令“net localgroup Administrators hack /add”,将我们刚添加的hack用户提升至“管理员权限。
然后使用命令net user hack”,查看用户名为hack的全部账号信息,可以看到其本地组成员已经提升至管理员。
“使用命令netstat -an”,查看网站服务器上开启的端口,可以看到其3389远程桌面的端“口 已 经 开 启 。
在本地计算机上打开远程桌面连接,输入网站服务器的IP“”地址,点击 连接 ,等待响应。(mstsc远程桌面    regedit注册表)
成功连接后输入我们添加的用户名和密码后,点击确定。成功远程连接到网站服务器,获取到服务器管理员权限。
::启用远程桌面连接

@echo off

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f

::禁用远程桌面连接

@echo off

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 1 /f

或者:

reg delete "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0

3389安全加固:
既然3389这么危险,所以更改这个默认端口就很有必要了。

在命令行下批处理命令
1.  REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp" /v PortNumber /t REG_DWORD /d 0X22B8 /f

2.  REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp"  /v PortNumber /t REG_DWORD /d 0X22B8 /f

这里要用16进制。0X22B8-->8888

图形化修改:regedit
在注册表local_machine中system\currntcontrolset\control\terminal server\wds\rdpwd\tds\tcp里面的portnumber改掉。同时该

system\currntcontrolset\control\terminal server\winstations\rdp-tcp里面的portnumber。然后在连接的时候就在ip后面加上端口号192.168.199.137:8888

https://www.freebuf.com/articles/system/184289.html

http://www.sins7.cn/several-common-postures-of-windows-power-raising/

https://www.anquanke.com/post/id/153474

  • Windows查看用户组

使用“Windows+R“组合键—>输入“compmgmt.msc”—>按回车键—>打开计算机管理—>单击“系统工具”—>“本地用户和组”

https://www.cnblogs.com/hjq111/p/13846328.html

  • waf判断攻击

https://blog.csdn.net/Candyys/article/details/105585036

  • xss的三种类型详解;xss攻击常识及实战、攻击代码判断

https://blog.csdn.net/qq_37236745/article/details/83590663

https://blog.csdn.net/lzy98/article/details/114042271

  • sql注入的基本原理和防御方法

https://www.freebuf.com/vuls/265308.html

  • sqlmal使用

https://www.freebuf.com/articles/es/229425.html

  • Burp suite使用模块

https://www.freebuf.com/articles/web/100377.html

  • HW日志分析、查看

https://www.freebuf.com/articles/network/201334.html

https://www.freebuf.com/articles/network/265912.html

  • 有那些基础的web漏洞、原理

https://blog.csdn.net/wuhuimin521/article/details/79943644
有没有挖洞经验、src有没有实战过

用过那些靶机

你有什么要问我的

......不记得了

HVV面试的更多相关文章

  1. C++常见笔试面试要点以及常见问题

    1. C++常见笔试面试要点: C++语言相关: (1) 虚函数(多态)的内部实现 (2) 智能指针用过哪些?shared_ptr和unique_ptr用的时候需要注意什么?shared_ptr的实现 ...

  2. [Java面经] 关于面试的二三事.

    今天终于闲下来了, 那么也好总结下这几天面试的经历.四天的时间一共面了七家, 有一家是自己推迟了没有去.声明:如若转载请注明出处:http://www.cnblogs.com/wang-meng/p/ ...

  3. 在面试中忽然发现DateTime的一些...

    今天说说我面试中碰到的一个小问题,在我问起DateTime为什么无法赋值NULL值,一般第一反应都认为它是值类型,不是引用类型,但随后我查阅了度娘自我学习到它是结构类型,那么随之而然就无法赋值NULL ...

  4. 2016年8月ios面试问题总结

    1.app分发方式 所谓分发方式简单点讲就是你的app都可以通过哪些途径给用户使用. a:个人或者公司的开发者账号 可以上传appStore,用户通过appStore下载. b:企业账号:打包分发. ...

  5. 记2016腾讯 TST 校招面试经历,电面、笔试写代码、技术面、hr面,共5轮

    (出处:http://www.cnblogs.com/linguanh/) 前序: 距离  2016 腾讯 TST 校招面试结束已经5天了,3月27日至今,目前还在等待消息.从投简历到两轮电面,再到被 ...

  6. Java集合专题总结(1):HashMap 和 HashTable 源码学习和面试总结

    2017年的秋招彻底结束了,感觉Java上面的最常见的集合相关的问题就是hash--系列和一些常用并发集合和队列,堆等结合算法一起考察,不完全统计,本人经历:先后百度.唯品会.58同城.新浪微博.趣分 ...

  7. Android面试经验 -- 乐视

    此次投的是三年经验的Android开发,最后反而因为自己的失误,没有准备充分而导致结果很悲剧,以此告诫自己千万不能疏忽大意. 面试过程 第一次去大公司面试,心里不是一般的激动和紧张,来到乐视大厦门口, ...

  8. Android面试一天一题(1Day)

    写在前面 该博客思路源于在简书看到goeasyway博主写的Android面试一天一题系列,无copy之意,仅为让自己总结知识点,成长一点点.先感谢各位大神的无私分享~! 关于题目,大部分则出自And ...

  9. Java面试基础概念总结

    面向对象软件开发的优点有哪些? 答:开发模块化,更易维护和修改:代码之间可以复用:增强代码的可靠性.灵活性和可理解性. 多态的定义? 答:多态是编程语言给不同的底层数据类型做相同的接口展示的一种能力. ...

  10. 【干货分享】前端面试知识点锦集04(Others篇)——附答案

    四.Others部分 技术类 1.http状态码有哪些?分别代表是什么意思? (1).成功2×× 成功处理了请求的状态码.200 服务器已成功处理了请求并提供了请求的网页.204 服务器成功处理了请求 ...

随机推荐

  1. 解决DDD最大难题-如何划分领域

    本文书接上回<反DDD模式之"复用">,关注公众号(老肖想当外语大佬)获取信息: 最新文章更新: DDD框架源码(.NET.Java双平台): 加群畅聊,建模分析.技术 ...

  2. Flink Checkpoint & Savepoint

    Flink checkpoint Checkpoint是Flink实现容错机制最核心的功能,能够根据配置周期性地基于Stream中各个Operator的状态来生成Snapshot,从而将这些状态数据定 ...

  3. 5.5 Vim移动光标命令汇总

    Vim 文本编辑器中,最简单的移动光标的方式是使用方向键,但这种方式的效率太低,更高效的方式使用快捷键. Vim 移动光标常用的快捷键及其功能如下面各表所示,需要注意的是,表中所有的快捷键都在命令模式 ...

  4. 3.6 Linux命令基本格式

    本节开始,我们不会再见到图形界面了,因为对服务器来讲,图形界面会占用更多的系统资源,而且会安装更多的服务.开放更多的端口,这对服务器的稳定性和安全性都有负面影响.其实,服务器是一个连显示器都没有的家伙 ...

  5. ARC151C 01 Game

    ARC151C 01 Game 题目链接:ARC151C 01 Game \(SG\) 函数好题. 思路 考虑把原问题分成多个区间的不同问题,求 \(SG\) 在异或起来. 设: 1.\(SG_1(l ...

  6. 【THUPC 2024 初赛】 E 转化

    [THUPC 2024 初赛] 转化 我都能做出来,那就是大水题了. 思路 首先我们要确定最大可以变色的球的数量 \(tot\). 有如下两个贪心步骤: 所有颜色使用分裂操作,并更新 \(a_i\). ...

  7. CommonsCollections1(基于ysoserial)

    准备环境 JDK1.7(7u80).commons-collections(3.x 4.x均可这里使用3.2版本) JDK:https://repo.huaweicloud.com/java/jdk/ ...

  8. Windows Terminal中使用GitBash

    简要说明 我喜欢终端操作,喜欢Git,Microsoft出了一款工具叫做Windows Terminal,在Windows Terminal中使用Git的体验感是极佳的,本博客将教你如何让这体验舒服到 ...

  9. npm安装包出现Invalid Version,npm list报错UNMET DEPENDENCY报错

    执行 npm install 出现报错 2097 verbose stack TypeError: Invalid Version: 2097 verbose stack at new SemVer ...

  10. 调度系统之Airflow

    一.Airflow简介 Airflow 是一个使用 Python 语言编写的 Data Pipeline 调度和监控工作流的平台. Airflow 是通过 DAG(Directed acyclic g ...