6月17号,某牛在朋友圈发了消息:

史上最牛逼的中国菜刀即将发布,过市面上所有的 waf,而且把 webshell 玩到让你瞠目结舌的境界

当时有消息声称 6 月底将会发布新版菜刀。

果然在 6 月 20 日,原本已经关闭的 maicaidao.com 又开放了,而且下载量瞬间就到了 660 +。

话不多说,下载一个体验一波到底有多牛逼。文章发布时站点又关闭了,具体原因不得而知。

注意:菜刀的唯一官网是: www.maicaidao.com

阅读全文 »

《PoC 编写指南》现已经同步至 gitbook,博客和 gitbook 会同步更新,地址: http://poc.evalbug.com/

文章开始前说点别的,本来打算6月份才更的,原本以为没人看的。最近收到一封热心读者的邮件,很是感动啊,谢谢支持。也感谢一起参与到这个教程编写中的每一位朋友。

博客这边其实不是特别想更新的,毕竟阅读起来没 gitbook 体验那么好。而且发现博客这里章节序号和那边不一样,自己也不想改了,下一章直接会跳到第4章,不要惊讶。

之前讲了一堆,都是编写的过程,在这一章最后总结一下,把需要用到的 Payload 规范整理了一份列表出来,供大家参考。

阅读全文 »

《PoC 编写指南》现已经同步至 gitbook,博客和 gitbook 会同步更新,地址: http://poc.evalbug.com/

写在前面

《PoC 编写指南》有 3 个月没更了,基本上我写博文都是在半夜两三点的时候写的,最近几个月有些忙,睡的也比较早,就一直停更了。当然也有一些别的方面的原因,每次写篇博文都是尽可能的把涉及到的东西讲清楚,写详细,自己在这个上面花的时间特别多,结果有些网站一个爬虫就全带走了,多多少少还是有些不爽,毕竟还是希望读者看过之后能给出一些宝贵的意见。

再说积极的事,这个系列也帮助了一些人,其中有个兄弟写了一个 Python 的项目,里面就用到了我们 2.3 节中的 PoC:

one python app for zoomeye 项目地址

2.4 基于时间的盲注的 SQL 注入 PoC 编写

本节原本打算找一个 PHP 语言的 CMS 的漏洞,环境好搭,找了半天没找到比较新的漏洞,最后决定直接用之前的漏洞。这次我们选择的漏洞为:

CmsEasy 5.5 UTF-8 20140802/celive/live/header.php SQL注入漏洞

这个漏洞是我们 2.2 节《基于报错的 SQL 注入 PoC 编写》中使用过的一个漏洞。

选这个洞的意义在于,让读者能体会到,一个漏洞的不同利用方式,没错,不只有一种利用方式。

阅读全文 »

写在前面

最近因为在忙论文的事情,一直没时间去写博客,《PoC 编写指南》也停更了几个月的样子。今天交了初稿,松了口气,抽时间更新一下博客。文章是去年圣诞节写的,由于各种原因,一直没发。重点是思路

2015 年 8 月圈子沙龙提的一个想法,之后因为各种事情一直没把这个想法实现出来。其实我感觉文章水分有点大(我就这么随口说说,别当真)。

本故事纯属虚构,看看就好,不管你信不信,我反正信了。

事情大概就是这样的,妹子是某公司的研发攻程狮,某天问我渗透网站是不是要先用扫描器?我想了想,还是回答了一个是。接着人又问我什么扫描器好使。

她要是知道后面电脑会被我黑了,所有密码沦陷了,估计她再也不想问我什么东西了吧。

阅读全文 »

《PoC 编写指南》现已经同步至 gitbook,博客和 gitbook 会同步更新,地址: http://poc.evalbug.com/

2.3 基于布尔的盲注的 SQL 注入 PoC 编写

这次我们选择的漏洞为 MetInfo 5.3 /include/global/listmod.php SQL 注入漏洞

2.3.1 漏洞分析

想看原文分析的可以点上面的链接去研究,你别看我的标题和原文作者的不一样,内容其实是一样的。

原文中的分析不是太详细,但是呢,我暂时不想详解这个漏洞,后面再看吧,如果有需要的话。

根据原文中分析我们知道了,存在 SQL 注入的文件是 /include/global/listmod.php , 存在注入的变量是 $serch_sql。

在 listmod.php 文件 200 行的位置拼接了 SQL 语句,在拼接 SQL 语句之前,对 $serch_sql 变量进行了初始化操作,但是呢,控制它是否初始化的另一个变量为 $imgproduct。

当这个 $imgproduct 变量非 search 的任意字符的时候,导致 $serch_sql 不能进行初始化,从而可以自定义 $serch_sql 进行注入。

阅读全文 »

《PoC 编写指南》现已经同步至 gitbook,博客和 gitbook 会同步更新,地址: http://poc.evalbug.com/

2.1 SQL 注入基础

准备完这些通用的基础知识之后,我们就可以开始编写自己的第一个 PoC 了。为什么要选 SQL 注入作第一个呢?因为它最常见,相信看本教程的你肯定在这之前都了解了,没了解我也装作你了解了给你讲,你上学的时候老师不都这么干的嘛。

2.1.1 SQL 注入原理

SQL 注入漏洞是发生于应用程序与数据库层的安全漏洞。简而言之,是在输入的字符串之中注入SQL指令,在设计不良的程序当中忽略了检查,那么这些注入进去的指令就会被数据库服务器误认为是正常的 SQL 指令而运行,因此遭到破坏或是入侵。

如果你不懂什么是 SQL 注入的话,这里我推荐去看 sqli-labs 这是目前我见过的最详细讲解 SQL 注入的资料了。不过都是纯英文的,但是也没多少难度。FreeBuf 上有两篇对应的中文介绍,你也可以去看看,相信对你是有帮助的。

安全科普:SQLi Labs 指南 Part 1

安全科普:SQLi Labs 指南 Part 2

倘若要是连 SQL 都不知道的话,我觉得吧,磨刀不误砍柴工,你觉得呢?

2.1.2 SQL 注入分类

分类这种东西对是相对的,看你站在什么角度了,我一直都很讨厌这些分类,如果你仔细去研究这些个分类,你会觉得这世界上的发明家太多了,想一出是一出啊。

反正我也是发明家,下面这些个分类是我个人的见解。

阅读全文 »

《PoC 编写指南》现已经同步至 gitbook,博客和 gitbook 会同步更新,地址: http://poc.evalbug.com/

第 1 章 技能基础

网络基础

为什么要学网络

安全界不缺乏有一些人连计算机网络是什么都不清楚,但是拿站,渗透一搞一个准。然而像我这种整天把基础知识挂在嘴边的人,拿站的时候照样怂。基础知识在我看来,是种常识,是种工具,不能说不会基础知识的人就一定不能怎么样,我只能说,我建议,我推荐,我支持先从基础学起来,这样在后面的学习当中就会如鱼得水。

需要学什么

对于写 PoC 来说,我们需要的并不是你去把 OSI 7 层模型的每一层都精通,你要精通了所有层的东西,你就不会坐在这里了。

好了,大概说一下我们需要了解哪些,相关的专业知识你可以去百度我不浪费时间了

阅读全文 »

写在前面

圣诞节快乐,老早之前看过一个老外闲得蛋疼,用 Perl 在终端上画了一个圣诞树,这不瞅着时间刚好圣诞节嘛,用我们的大 Python 画了一个。下文会讲讲怎么画出这么个东西出来。

来来来,先上图, duang ~

阅读全文 »

《PoC 编写指南》现已经同步至 gitbook,博客和 gitbook 会同步更新,地址: http://poc.evalbug.com/

引言

有感而发,想写一系列的教程,帮助刚入安全圈的新手朋友。假如有一天,这个系列的教程真的帮到了你,别忘了回来给我点个赞,不为别的,只想看看这玩意有没有用。

这一系列我将其命名为 《PoC 编写指南》,为什么要叫这个名字呢,感觉这个名字应该好听一些,如果你在阅读的时候有更好的名字,可以推荐给我。

关于版权问题,我向来不反对转载的,但是我特别鄙视那些纯复制粘贴过后,仅仅是改了作者名字的人。

本教程为笔者原创,转载请征求笔者同意,笔者默认不同意

在本教程中,你将会同我一起,以真实案例为背景,针对当下主流的漏洞来分析漏洞,并且一步一步编写对应的 PoC。当然本教程肯定不会覆盖到所有种类的漏洞,因为我不会,哈哈哈。不过,关于 PoC 的编写都是触类旁通的,我相信,你会在学习了现有的章节之后,举一反三。

没错,如果你在看了所有的章节之后学到的不是编写的思想,那恭喜你,你获得了再看一次的机会。

阅读全文 »