DNSLOG平台搭建

    渗透测试 lz520520 3年前 (2019-12-08) 1339次浏览

    首先dnslog平台源码包链接如下

    dnslog

    这个平台目前dnslog可以投入实战了,web日志记录还未测试,后续优化,目前全dns解析都指向127.0.0.1。

    0x00 购买域名

    这里推荐使用godaddy,不需要实名认证,如果使用其他平台就跳过此步。

    访问www.godaddy.com,注册一个账号,这个账号使用邮箱注册,注册之后还需要有个安全验证,需要设置SMS短信验证或者其他的,我这里使用的是谷歌token 。

     

    然后就可以购买域名了。

    DNSLOG平台搭建

     

     

    我买的一级域名是xyz,第一年只需要8块,还是很划算的,不建议续费,很贵,到期再换就行了。

    类似于这样就可以加入购物车购买了,可以用支付宝支付的。

    DNSLOG平台搭建

     

    后续还需要填写个人信息,这个大家自己编一下就好了,不赘述了。

     

     

    0x01 配置DNS记录

    想正常解析之前,会有提示,会发送到你之前注册邮箱进行域名激活才可以使用。

    然后开始配置域名解析,这里只需要配置两条。

    1. NS记录,让子域名test.dnsloges.xyz的解析指向ns.dnsloges.xyz

    DNSLOG平台搭建

     

    2. A记录,之前NS记录指向的域名服务器的解析,解析指向我们vps ip。

    DNSLOG平台搭建

     

     

    因为使用了BugScanTeam写的dnslog平台,我就再加了一个管理用的域名的A记录解析,dnslog.dnsloges.xyz,也是指向我们的vps ip

     

     

    0x02 dnslog平台搭建

    这里使用的BugScanTeam的平台,git项目如下,这个python2项目,我改成python3,并且django也更新到2.1.8版本,老版本不好和其他平台一起搭建。

    https://github.com/BugScanTeam/DNSLog

    还有另一个平台大家也可以试试

    https://github.com/SPuerBRead/Bridge

     

    再搭建之前,需要改下源码。

    dnslog/settings.py

    最后几行,修改如下,都有注释不解释了,提一下,SERVER_IP建议设置127.0.0.1,这个主要是给DNS解析用的。

    DNSLOG平台搭建

     

    还有一处需要修改,将SSL重定向关掉,否则你http访问管理端会重定向到https导致访问失败,除非你有部署nginx之类的反向代理做ssl卸载。

    DNSLOG平台搭建

     

    然后将源码传到vps上就行。

    然后安装python依赖包

    pip install -r requirements.pip

     

    记得修改管理后台的密码,管理员账号是admin

    sudo python manage.py changepassword admin

     

    最后运行,这里可以设置下web端口,下面命令可以后台运行。

    nohup sudo python manage.py runserver 0.0.0.0:88 &

     

    用户登录界面

    http://dnslog.dnsloges.xyz:88

     

    管理员登录界面,密码是刚才修改的密码

    http://dnslog.dnsloges.xyz:88/admin

     

    管理后台可以新建一个用户账号,每个账号会对应一个子域名,这里新建的对应的子域名是test1,结合之前的域名即test1.test.dnsloges.xyz。

    DNSLOG平台搭建

     

    管理后台的dnslog模块,只是用来查看dnslog记录的,暂时没发现其他用处,后台只需要添加用户即可。

     

    0x03 测试

    windows上使用如下命令即可。

    DNSLOG平台搭建

     

    然后使用刚才创建的账号登录用户界面即可,如下即是测试成功。这里我新增了remote_addr字段。

    DNSLOG平台搭建

     

     

     

    0x04 补充

    由于这个git项目还有不少小瑕疵,有人进行了改进,新增了几个API接口,我也再这基础上再调整了API接口,像调整了DNSLOG返回json格式,新增源IP的记录。

    新增如下,原来的API跟没有一样,如下就可以很方便在本地调用了。

    DNSLOG平台搭建

     

    上图第一个API我砍掉了,因为这个平台是使用django写的,开了CSRF功能,然后用token来防护的,而这个CSRF token被用来做API接口的token,会导致每次登陆后token都变,都需要更新API接口的token,所以我单独新增了API接口使用的单独auth_token,如果需要修改登陆管理后台修改。

    如下图管理后台,token是CSRF token,auth token才是API接口使用到的token,这些都是存放在sqlite数据库里的。

    DNSLOG平台搭建

     

     

     

    访问查询接口如http://dnslog.dnsloges.xyz:85/apiquery/dns/test/fdasfsafasfsa123123fdsa71fa0/

    返回如下,这个目前可以满足dnslog利用了。

    DNSLOG平台搭建

     

    0x05 参考

    DNSLOG原理介绍https://www.freebuf.com/column/184587.html

     

     


    Security , 版权所有丨如未注明 , 均为原创丨
    转载请注明原文链接:DNSLOG平台搭建
    喜欢 (4)