去年秋天,拿站实例我接了个私活,拿站实例帮一个本地小老板检测他刚上线的拿站实例商城后台。他说自己花了三千块找人做的拿站实例,上线没三天,拿站实例首页就被人挂了个黑页。拿站实例我打开一看,拿站实例后台登录页连验证码都没有,拿站实例数据库配置文件直接放在web目录下,拿站实例文件名还叫
config.php.bak。拿站实例这就是拿站实例典型的“拿站”起点——不是靠什么高深漏洞,纯粹是拿站实例开发者自己把门敞开了。拿站这个词,拿站实例圈外人听着像黑客电影,拿站实例其实大多数时候就是拿站实例个体力活加耐心活。我最早接触这行是2016年,那会儿还在读大二,跟着一个学长扫目录。他用的是御剑,我就在旁边看响应码。200、403、301,一个个试。有一次扫到一个
/admin/login.php,返回200,打开是个简陋的登录框。学长试了admin/admin,进去了。就这么简单。那台服务器上跑着某款老OA系统,数据库账号密码就写在登录页的注释里,。我问他怎么想到看注释的,他说习惯而已,就像进别人家先看鞋柜上有没有放钥匙。后来我自己独立拿的第一个站,是个地方论坛。Discuz! 6.0,老得掉牙。我先用whatweb看了一眼指纹,确认版本后直接搜对应exp。有个前台SQL注入,在
faq.php的action参数里。手工测了一下,and 1=1正常,and 1=2报错。用sqlmap跑,跑出管理员表,密码是md5。cmd5.com一查,明文是“qwer1234”。进后台,找模板编辑功能,插了句话木马。菜刀连上去,whoami一看,iis_user。权限低得可怜,但能读web.config。里面明文写着数据库sa密码。提权?不用提,直接连1433,sa权限,xp_cmdshell一开,加了个管理员账号。整个过程不到四十分钟。那台服务器后来我留了个txt在根目录,写着“你的sa密码太弱了,建议改改”。没删库,没动数据,就是玩。拿站最关键的其实不是技术,是信息收集。我认识一个家伙,专靠Google hacking吃饭。他拿站从不扫目录,就靠
inurl:asp?id=这类语法。有一次他搜到一个政府站,后台是/manage/login.asp,试了弱口令进不去。但他注意到登录页有个“忘记密码”链接,点进去提示“请联系管理员”。他直接查whois,找到管理员邮箱,然后去社工库搜这个邮箱。搜出来一个2012年某论坛的泄露密码。拿这个密码去试后台,进去了。他说这叫“曲线救国”,比硬碰硬省事。不过现在拿站越来越难了。WAF遍地走,云盾、安全狗、mod_security,稍微像样点的站都挂着。去年我想复现一个ThinkPHP的RCE,本地搭了环境,payload打得通。找了个真实目标,一发包就被拦截,返回403。换编码、分块传输、改Content-Type,折腾一下午没绕过。最后放弃。那站到现在还活着,我也没再碰。有时候不是技术不行,是成本划不来。有那时间不如去挖SRC,至少合法。
说回开头那个小老板。我帮他补了验证码,改了数据库配置路径,删了备份文件,又装了个免费WAF。收了他五百块。他问我能不能反打回去,我说别想了,对方用的是境外VPS,跳了三国代理。他哦了一声,说那算了。其实我知道,挂黑页那小子大概率也是个新手,拿站手法粗糙得很——上传的黑页里还留着QQ号。但我没告诉他。有些事,知道了反而麻烦。
顶: 472踩: 63475






评论专区