不乱于心,不困于情。
不畏将来,不念过往。如此,安好。

面试经历分享和题目环境复现

面试经历分享和题目环境复现

笔者最近参加了很多面试,想通过这个项目将面试的经历和面试官提出的问题分享一下,同时复现一部分面试官的题目环境。这里有很多漏洞环境在网上都有,所以在这里也没有过多的去自个复现(懒得复现了),于是就将大佬们的成果结果面试题目整理了一下。特别感谢vulhub提供的众多渗透测试环境,有兴趣的伙伴们还可以去大佬的项目下膜拜https://github.com/vulhub/vulhub

经典不变的场景问题:给你一个后台登陆站点,说说你的渗透思路。

此类问题一般围绕渗透测试的基本流程展开,不过个人有其他思路也可以,这里笔者主要是为了可以做到条例清晰(后来看看也并不清晰。。。。。。emmmm),让面试官觉得很有逻辑性。当然回答过程中还有面试官提出的其他问题都穿插提问啦。

信息搜集

whois站长查询

查注册人信息,邮箱。主要是可以拿着这些信息通过goole,或github搜索一些其他的敏感信息,扩大搜索面。效果就不多说了,在github泄漏一些账号或源码的事件简直不要太多。

查子域名

这里不仅仅是只针对这个场景的渗透了。当然有可能子域名下的数据库和正式的用的一样呢,例如测试站点,开发者为了方便利用数据测试,自然而然的采用了正式数据库(这个我遇到过),测试站点的问题理论上比正式上线的会多一些,拿到权限的可能也就越大,这是再到正式的登陆接口测试。(扩散思维)

服务器相关信息(真实IP,系统类型、waf、开放端口)

问:获取获取真实ip方法,

ping方法去ping域名,

问:如何判断目标站点使用了CDN,如果目标站点使用了CDN,如何绕过判断真实ip?

判断:有条件的使用全国不同地区的服务器ping这个网址,(当然线上也有工具!)如果得到的ip结果不同,即可判断使用了CDN。

绕过:查询域名解析记录;使用国外服务器ping,因为国内很少对国外做CDN。当然还可以使用nslookup,dns服务器地址尽量找冷门的,热门的会和国内查询的结果相同。

Nmap 扫描,探测当前服务器是否开放了其他端口,如果其他端口存在历史遗留漏洞,可以直接利用。nmap扫描服务器进行搜集,我认为也是至关重要的一点,不能遗漏。

问:nmap默认以什么方式探测

ping方式

问:如何使用禁ping的方式扫描

-p0

漏洞挖掘

对应下面的一些列渗透环境请点击https://github.com/yaunsky/Iproject/tree/master/%E6%BC%8F%E6%B4%9E%E6%8C%96%E6%8E%98/

一个登陆站点可能存在的漏洞:sql注入、万能密码(sql注入)、弱口令,敏感信息泄漏,csrf,url跳转,xss,命令执行,越权访问,未授权访问,短信轰炸

sql注入

问:注入类别

get、post、cookie、盲注

sqlmap的使用方法

问:获得当前数据库使用的用户

—current-user

问:post注入方法、cookie注入方法。

抓包,放到txt文件,使用sqlmap -r *.txt实现post注入

cookie注入,–cookie .. —level 2

使用文件时,制定某特定选项注入的方法

在文件中,将指定的参数值设为星号(*)

risk级别、level级别

risk 1-3

level 1-5

默认都是1.测试cookie注入时最低level为2

文件上传

绕过的方式有哪些

前端验证绕过,

网站指纹识别,中间件识别

1、常见的cms漏洞

2、weblogic、nginx、iis、apache

问:weblogic你知道那些漏洞

类似问题尽量答新一点的或经典的(我认为这样面试官会觉得你关注最新的安全事件),任意文件上传。

又问:有哪些限制呢?

用户名和密码

设置web测试

问:谈一谈nginx、iis和apache解析漏洞

nginx解析:从右往左解析

iis解析漏洞: 通过;绕过

apache解析:将jpg文件当作执行文件解析

提权或拿shell

mysql写shell

问:拥有数据库的访问权限如何写shell

union select 写入

问:还有其他的吗?

不会,肯定是有的

问:如果你拥有一个sa用户,如何写shell

1、通过sa权限回复xp_cmdshell

2、查网站真实路径

3、写入shell

问:sql server和oracal默认端口

1433 1521 mysql3306

问:phpmyadmin下如何写shell

1、查询是否开启日志记录,没有则开启

show global variables like “genera”;

2、设置日志保存地址(前提得到网站真实路径)

3、select “shell”这样就写进了日志,菜刀连日志文件即可

或者

1、创建一个表,设置一个字段

2、将字段内容为一句话

3、查询表的内容,倒入到php文件

4、菜刀连接php文件

或者

1、直接通过select 一句话 into outfile “PHP文件路径”

2、连接一句话

问:mysql获得shell的时候,有哪些限制条件

GOP关闭

Secure-file-priv没有配置

root权限

有绝对路径

udf提权

利用root权限,创建带有调用cmd函数的udf.dll文件,然后可以直接输入cmd

linux提权方式

1、利用内核漏洞提权

脏牛

2、sudo提权

3、数据库提权

4、suid提权

ssrf结合redis获得shell

使用ssrf探测内网是否开放了6379端口(对应redis服务),如果开放,即可结合redis未授权漏洞,通过gopher协议写入shell。

又问:redis未授权都有哪几种方式获得shell?

1、直接写shell到网站的真实路径下,当然必须知道网站真实目录

2、将密钥写入.ssh/目录下

3、写计划任务

4、主从rce

又问:执行写shell的操作时,应该具备哪些条件。

1、未授权访问

2、redis命令没有禁止,例如config

禁用命令的使用去找redis.conf。里面的security项

rename-command CONFIG “”

又问:如果内容禁止使用ip如何探测内网端口

1、使用dns解析

2、127。0。0。1

3、http://[::]:80/

4、进制转换

权限维持

windows方法

1、shift后门

将自己的cmd.exe替换掉C’\windows\system32\dllcache\sethc.exe

在开机后未登陆情况下按5下shift执行后门。

2、计划任务

没研究过

linux方法

1、ssh后门

2、suid后门

3、inetd服务后门

4、vim后门

MSF权限维持

1、persistence模块

2、metsvc模块

powershell权限维持

资料查的,暂未研究,不过面试官有时侯也会挺喜欢问这些。

挖洞过程中,你觉得挖到最有意思的漏洞

阿里积分活动

ueditor的ssrf漏洞

内网渗透知识

域控

域控hash文件存放位置

C:\Windows\NTDS\NTDS.dit

内网信息搜集

查看域:new user /domain

看共享:net view

看hosts文件:可能通过这个文件进行ip-域名解析

浏览器中记录的密码

敏感文件

服务器中的配置文件

历史命令

ssh私钥

xshell中的session文件,可导出

工具扫描:msf ms17010

应急响应

应急如何查找挖矿

Netstat -anp查异常pid看端口信息,然后根据端口信息定位文件 ls -l /proc/PID

服务器入侵报警的怎么做?

自写的脚本,实现的功能:查登陆日志(成功与失败)、查规定时间内修改的文件、查最新添加的文件、查历史命令,查异常进程、查/etc/passwd、查各服务的最新日志(每天的日志都会备份一份到指定文件夹下)。脚本去见笔者另一公开内容。

自写渗透方面的工具

有就解释,没有拉到。建议多写写渗透相关的工具或脚本,加分很多

SRC提交优质漏洞

有就解释,没有拉到,贼加分!

文章中很多漏洞没有给出漏洞地址,但在网上都有。

转自:https://github.com/yaunsky/GetOffer

赞(0)
未经允许不得转载:seo优化_前端开发_渗透技术 » 面试经历分享和题目环境复现