渗透测试常见问题以及方法。
面试过安全的、渗透的、安全测试的安全运维的、安全服务的,其实来来回回基本问题就是那么多,更多的是对安全的理解深度以及新型问题的应对和处理能力。
借道哥的一句话:我们不是要做一个能够解决问题的方案,而是要做一个能够‘漂亮的’解决问题的方案
每一个问题我们优雅的对待和处理,就像写婀娜多姿的code一样,它们给你反馈的result也会让你满意。
好些知识点也借鉴了一些大佬的,写的也很粗略,大家莫要责怪哈。
1.拿到一个待检测的站,你觉得应该先做什么/strong>
1)信息收集
1,获取域名的whois信息,获取注册者邮箱姓名电话等。
2,查询服务器旁站以及子域名站点,因为主站一般比较难,所以先看看旁站有没有通用性的cms或者其他漏洞。
Content Management System,常见如下:
3,查看服务器操作系统版本,web中间件,看看是否存在已知的漏洞,比如IIS,APACHE,NGINX的解析漏洞
4,查看IP,进行IP地址端口扫描,对响应的端口进行漏洞探测,比如 rsync,心脏出血,mysql,ftp,ssh弱口令等。
5,扫描 站目录结构,看看是否可以遍历目录,或者敏感文件泄漏,比如php探针
php探针是用来探测空间、服务器运行状况和PHP信息用的,探针可以实时查看服务器硬盘资源、内存占用、 卡流量、系统负载、服务器时间等信息。
6,google hack 进一步探测 站的信息,后台,敏感文件
2)漏洞扫描
开始检测漏洞,如XSS,XSRF,sql注入,代码执行,命令执行,越权访问,目录读取,任意文件读取,下载,文件包含,
一句话木马
一句话木马能连接成功有两个前提条件:
一、服务器端没有禁止Adodb.Stream组件,因为我们使用一句话木马写入WebShell代码的条件是服务器端创建Adodb.Stream组件,如果该组件被禁用的话无法写入。
二、权限问题,如果当前的虚拟目录禁止user组或者everyone写入,同样不会成功。
如何启用“一句话”木马拦截功能/span>
(1)在服务器 wzxStopKeyWord.ini 文件中,设置 blockmuma = 1 表示启用此功能,拦截“一句话”木马。
(2)重启IIS即可生效。
木马原理:
首先<SCRIPT RUNAT=SERVER LANGUAGE=JAVASCRIPT>是JavaScript脚本的开始标记,其中RUNAT属性的值SERVER表示脚本将在服务器端运行, 后面的eval是一句话木马的精华部分,使用eval方法的话它里面的字符串将会被执行,这样当脚本在服务器端运行的时候同时也执行了 Request.form(‘#’)+”这句代码,Request.form(‘#’)的作用是读取客户端文件中html标记属性中name值被命名 为#的部分。
一.eval
<hp @eval($_POST[“password”]);gt;
eval用法:
eval() 函数把字符串按照 PHP 代码来计算。
该字符串必须是合法的 PHP 代码,且必须以分 结尾。
如果没有在代码字符串中调用 return 语句,则返回 NULL。如果代码中存在解析错误,则 eval() 函数返回 false。
1 <hpeval($_POST[password]);gt;
其他一句话木马:
3)漏洞利用
利用以上的方式拿到webshell,或者其他权限
4)权限提升
提权服务器,比如windows下mysql的udf提权,serv-u提权,windows低版本的漏洞,如iis6,pr,巴西烤肉,linux脏牛漏洞,linux内核版本漏洞提权,linux下的mysql system提权以及oracle低权限提权
巴西烤肉:1.churrasco.exe是2003系统一个本地提权漏洞,通过此工具可以以SYSTEM权限执行命令,从而可以达到添加用户的目的。
Linux kernel >= 2.6.22(2007年发行,到2016年10月18日才修复)
该漏洞是Linux的一个本地提权漏洞,发现者是Phil Oester,影响>=2.6.22的所有Linux内核版本,修复时间是2016年10月18 。该漏洞的原因是get_user_page内核函数在处理Copy-on-Write(以下使用COW表示)的过程中,可能产出竞态条件造成COW过程被破坏,导致出现写数据到进程地址空间内只读内存区域的机会。当我们向带有MAP_PRIVATE标记的只读文件映射区域写数据时,会产生一个映射文件的复制(COW),对此区域的任何修改都不会写回原来的文件,如果上述的竞态条件发生,就能成功的写回原来的文件。比如我们修改su或者passwd程序就可以达到root的目的。
5) 日志清理
6)总结 告及修复方案
2.判断出 站的CMS对渗透有什么意义/strong>
查找 上已曝光的程序漏洞。
如果开源,还能下载相对应的源码进行代码审计。
3.一个成熟并且相对安全的CMS,渗透时扫目录的意义/strong>
敏感文件、二级目录扫描
站长的误操作比如: 站备份的压缩文件、说明.txt、二级目录可能存放着其他站点
4.常见的 站服务器容器。
IIS、Apache、nginx、Lighttpd、Tomcat
5.mysql注入点,用工具对目标站直接写入一句话,需要哪些条件/strong>
root权限以及 站的绝对路径。
6.目前已知哪些版本的容器有解析漏洞,具体举例。
iis 5.x/6.0解析漏洞
iis6.0解析漏洞主要有以下三种:
1). 目录解析漏洞 /xx.asp/xx.jpg
在 站下创建文件夹名字为.asp、.asa的文件夹,其目录内的任何扩展名的文件都被iis当做asp文件来解析并执行。因此只要攻击者可以通过该漏洞直接上传图片马,并且可以不需要改后缀名!
图片马
2). 文件解析 xx.asp;.jpg
在iis6.0下,分 后面的不被解析,所以xx.asp;.jpg被解析为asp脚本得以执行。
3). 文件类型解析 asa/cer/cdx
IIS 6.0
/xx.asp/xx.jpg “xx.asp”是文件夹名
IIS 7.0/7.5
默认Fast-CGI(通用 关接口)开启,直接在url中图片地址后面输入/1.php,会把正常图片当成php解析
Nginx
版本小于等于0.8.37,利用方法和IIS 7.0/7.5一样,Fast-CGI关闭情况下也可利用。
空字节代码 xxx.jpg.php
Apache
Apache对文件的解析主要是从右到左开始判断并进行解析,如果判断为不能解析的类型,则继续向左进行解析,如xx.php.wer.xxxxx将被解析为PHP类型。
上传的文件命名为:test.php.x1.x2.x3,Apache是从右往左判断后缀
现在对apache的配置文件做适当修改,在文件中添加下面几行代码
禁止*.php.*文件的访问权限
lighttpd
xx.jpg/xx.php。
7.如何手工快速判断目标站是windows还是linux服务器/strong>
linux大小写敏感,windows大小写不敏感。
8.为何一个mysql数据库的站,只有一个80端口开放/strong>
更改了端口,没有扫描出来。
站库分离。
3306端口不对外开放
9、3389无法连接的几种情况
没开放3389 端口
端口被修改
防护拦截
处于内 (需进行端口转发)
10.如何突破注入时字符被转义/strong>
宽字符注入
hex编码绕过
12.拿到一个webshell发现 站根目录下有.htaccess文件,我们能做什么/strong>
能做的事情很多,用隐藏 马来举例子:
插入
<FilesMatch “xxx.jpg”> SetHandler application/x-httpd-php </FilesMatch>
.jpg文件会被解析成.php文件。
具体其他的事情,不好详说,建议大家自己去搜索语句来玩玩。
13.注入漏洞只能查账 密码/strong>
只要权限广,拖库脱到老。
14.安全狗会追踪变量,从而发现出是一句话木马吗/strong>
是根据特征码,所以很好绕过了,只要思路宽,绕狗绕到欢,但这应该不会是一成不变的。
15.access 扫出后缀为asp的数据库文件,访问乱码,如何实现到本地利用/strong>
迅雷下载,直接改后缀为.mdb。
16.提权时选择可读写目录,为何尽量不用带空格的目录/strong>
因为exp执行多半需要空格界定参数
17.某服务器有站点A,B 为何在A的后台添加test用户,访问B的后台。发现也添加上了test用户/strong>
同数据库。
18.注入时可以不使用and 或or 或xor,直接order by 开始注入吗/strong>
and/or/xor,前面的1=1、1=2步骤只是为了判断是否为注入点,如果已经确定是注入点那就可以省那步骤去。
19:某个防注入系统,在注入时会提示:
系统检测到你有非法注入的行为。
已记录您的ip xx.xx.xx.xx
时间:2016:01-23
提交页面:test.aspd=15
提交内容:and 1=1nai
20、如何利用这个防注入系统拿shell/strong>
在URL里面直接提交一句话,这样 站就把你的一句话也记录进数据库文件了 这个时候可以尝试寻找 站的配置文件 直接上菜刀链接。
21.上传大马后访问乱码时,有哪些解决办法/strong>
浏览器中改编码。
22.审查上传点的元素有什么意义/strong>
有些站点的上传文件类型的限制是在前端实现的,这时只要增加上传类型就能突破限制了。
23.目标站禁止注册用户,找回密码处随便输入用户名提示:“此用户不存在”,你觉得这里怎样利用/strong>
先爆破用户名,再利用被爆破出来的用户名爆破密码。
其实有些
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!