##// END OF EJS Templates
Fix XSS reported on Security list...
Fix XSS reported on Security list No CVE-ID yet August 18, 2015 ----- Reported to Quantopian by Juan Broullón <thebrowfc@gmail.com>... If you create a new folder in the iPython file browser and set Javascript code as its name the code injected will be executed. So, if I create a folder called "><img src=x onerror=alert(document.cookie)> and then I access to it, the cookies will be prompted. The XSS code is also executed if you access a link pointing directly at the folder. jik ------

File last commit:

r13386:91babb98
r21633:3ab41641
Show More
debug.py
43 lines | 1.5 KiB | text/x-python | PythonLexer
"""
Contains debug writer.
"""
from __future__ import print_function
#-----------------------------------------------------------------------------
#Copyright (c) 2013, the IPython Development Team.
#
#Distributed under the terms of the Modified BSD License.
#
#The full license is in the file COPYING.txt, distributed with this software.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
from .base import WriterBase
from pprint import pprint
#-----------------------------------------------------------------------------
# Classes
#-----------------------------------------------------------------------------
class DebugWriter(WriterBase):
"""Consumes output from nbconvert export...() methods and writes usefull
debugging information to the stdout. The information includes a list of
resources that were extracted from the notebook(s) during export."""
def write(self, output, resources, notebook_name='notebook', **kw):
"""
Consume and write Jinja output.
See base for more...
"""
if isinstance(resources['outputs'], dict):
print("outputs extracted from %s" % notebook_name)
print('-' * 80)
pprint(resources['outputs'], indent=2, width=70)
else:
print("no outputs extracted from %s" % notebook_name)
print('=' * 80)