HVV面试
- 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面试的更多相关文章
- C++常见笔试面试要点以及常见问题
1. C++常见笔试面试要点: C++语言相关: (1) 虚函数(多态)的内部实现 (2) 智能指针用过哪些?shared_ptr和unique_ptr用的时候需要注意什么?shared_ptr的实现 ...
- [Java面经] 关于面试的二三事.
今天终于闲下来了, 那么也好总结下这几天面试的经历.四天的时间一共面了七家, 有一家是自己推迟了没有去.声明:如若转载请注明出处:http://www.cnblogs.com/wang-meng/p/ ...
- 在面试中忽然发现DateTime的一些...
今天说说我面试中碰到的一个小问题,在我问起DateTime为什么无法赋值NULL值,一般第一反应都认为它是值类型,不是引用类型,但随后我查阅了度娘自我学习到它是结构类型,那么随之而然就无法赋值NULL ...
- 2016年8月ios面试问题总结
1.app分发方式 所谓分发方式简单点讲就是你的app都可以通过哪些途径给用户使用. a:个人或者公司的开发者账号 可以上传appStore,用户通过appStore下载. b:企业账号:打包分发. ...
- 记2016腾讯 TST 校招面试经历,电面、笔试写代码、技术面、hr面,共5轮
(出处:http://www.cnblogs.com/linguanh/) 前序: 距离 2016 腾讯 TST 校招面试结束已经5天了,3月27日至今,目前还在等待消息.从投简历到两轮电面,再到被 ...
- Java集合专题总结(1):HashMap 和 HashTable 源码学习和面试总结
2017年的秋招彻底结束了,感觉Java上面的最常见的集合相关的问题就是hash--系列和一些常用并发集合和队列,堆等结合算法一起考察,不完全统计,本人经历:先后百度.唯品会.58同城.新浪微博.趣分 ...
- Android面试经验 -- 乐视
此次投的是三年经验的Android开发,最后反而因为自己的失误,没有准备充分而导致结果很悲剧,以此告诫自己千万不能疏忽大意. 面试过程 第一次去大公司面试,心里不是一般的激动和紧张,来到乐视大厦门口, ...
- Android面试一天一题(1Day)
写在前面 该博客思路源于在简书看到goeasyway博主写的Android面试一天一题系列,无copy之意,仅为让自己总结知识点,成长一点点.先感谢各位大神的无私分享~! 关于题目,大部分则出自And ...
- Java面试基础概念总结
面向对象软件开发的优点有哪些? 答:开发模块化,更易维护和修改:代码之间可以复用:增强代码的可靠性.灵活性和可理解性. 多态的定义? 答:多态是编程语言给不同的底层数据类型做相同的接口展示的一种能力. ...
- 【干货分享】前端面试知识点锦集04(Others篇)——附答案
四.Others部分 技术类 1.http状态码有哪些?分别代表是什么意思? (1).成功2×× 成功处理了请求的状态码.200 服务器已成功处理了请求并提供了请求的网页.204 服务器成功处理了请求 ...
随机推荐
- Java将html文本转成纯文本
Java将html文本转成纯文本 public static String splitAndFilterString(String input, int length) { if (input == ...
- Mysql导出文本文件
使用mysqldump命令导出文本文件 mysqldump -u root -pPassword -T 目标目录 dbname [tables] [option]; 其中: Password 参数表示 ...
- 管中窥豹----从String Intern中观察.NET Core到.NET 8 托管堆的变迁
简介 https://www.cnblogs.com/lmy5215006/p/18494483 在此文中,研究.NET String底层结构时,我所观察到的情况与<.NET Core底层入门& ...
- 基于Java+SpringBoot+Mysql实现的古诗词平台功能设计与实现一
一.前言介绍: 1.1 项目摘要 随着信息技术的迅猛发展和数字化时代的到来,传统文化与现代科技的融合已成为一种趋势.古诗词作为中华民族的文化瑰宝,具有深厚的历史底蕴和独特的艺术魅力.然而,在现代社会中 ...
- Impala学习--Impala前端代码分析,Impala后端代码分析
Impala前端代码分析 Table of Contents 1 概述 2 语法分析和ParseNode 3 Analyzer 4 生成执行计划和Planner 5 Catalog 1 概述 前端代码 ...
- Java多线程设计模式之线程池模式
前序: Thread-Per-Message Pattern,是一种对于每个命令或请求,都分配一个线程,由这个线程执行工作.它将"委托消息的一端"和"执行消息的一端&qu ...
- golang之jwt
golang-jwt是go语言中用来生成和解析jwt的一个第三方库.本文中使用目前最新的v5版本. 安装 go get -u github.com/golang-jwt/jwt/v5 在代码中引用 i ...
- Echarts 基本使用
1.Echarts简介 ECharts 是一个使用 JavaScript 实现的开源可视化库,涵盖各行业图表,满足各种需求. ECharts 包含了以下特性: (1)丰富的可视化类型: 常规的折线图. ...
- 案例 | 销讯通加持药企SFE部门效能提升
为了获取更大的市场空间,医药健康行业正迎来一波前所未有的产业升级.尽管不少企业取得了许多成绩,但仍面临诸多挑战. 江苏某制药公司在心脑血管.中枢神经.胃肠内科.心脏科.内分泌科.皮肤科和风湿科等领域均 ...
- Java Playwright 浏览器最大化
Playwright 是一个用于自动化 Web 应用测试的现代工具,支持多种语言(包括 Java)及多个浏览器(如 Chromium.Firefox 和 WebKit).它提供了一致的 API 来控制 ...