mirror of https://github.com/CIRCL/AIL-framework
				
				
				
			
		
			
				
	
	
		
			636 lines
		
	
	
		
			26 KiB
		
	
	
	
		
			HTML
		
	
	
			
		
		
	
	
			636 lines
		
	
	
		
			26 KiB
		
	
	
	
		
			HTML
		
	
	
| <!DOCTYPE html>
 | |
| <html lang="en">
 | |
| <head>
 | |
|   <title>Paste information - AIL</title>
 | |
|   <link rel="icon" href="{{ url_for('static', filename='image/ail-icon.png') }}">
 | |
|   <meta charset="utf-8">
 | |
|   <meta name="viewport" content="width=device-width, initial-scale=1">
 | |
| 
 | |
|    <link href="{{ url_for('static', filename='css/bootstrap.min.css') }}" rel="stylesheet">
 | |
|    <link href="{{ url_for('static', filename='font-awesome/css/font-awesome.css') }}" rel="stylesheet">
 | |
|    <link href="{{ url_for('static', filename='css/sb-admin-2.css') }}" rel="stylesheet">
 | |
|    <link href="{{ url_for('static', filename='css/dataTables.bootstrap.css') }}" rel="stylesheet" type="text/css" />
 | |
|    <link href="{{ url_for('static', filename='css/tags.css') }}" rel="stylesheet" type="text/css" />
 | |
| 
 | |
|    <script language="javascript" src="{{ url_for('static', filename='js/jquery.js')}}"></script>
 | |
|    <script src="{{ url_for('static', filename='js/bootstrap.min.js') }}"></script>
 | |
|    <script src="{{ url_for('static', filename='js/jquery.dataTables.min.js') }}"></script>
 | |
|    <script src="{{ url_for('static', filename='js/dataTables.bootstrap.js') }}"></script>
 | |
|    <script src="{{ url_for('static', filename='js/jquery.flot.js') }}"></script>
 | |
|    <script src="{{ url_for('static', filename='js/jquery.flot.time.js') }}"></script>
 | |
|    <script src="{{ url_for('static', filename='js/jquery.flot.stack.js') }}"></script>
 | |
|         <script src="{{ url_for('static', filename='js/tags.js') }}"></script>
 | |
| 
 | |
|   <style>
 | |
|     .scrollable-menu {
 | |
|       height: auto;
 | |
|       max-height: 200px;
 | |
|       overflow-x: hidden;
 | |
|       width:100%;
 | |
|     }
 | |
| 
 | |
| 		.red_table thead{
 | |
| 			background: #d91f2d;
 | |
| 			color: #fff;
 | |
| 		}
 | |
|   </style>
 | |
| 
 | |
| </head>
 | |
| <body>
 | |
|     <div class="panel panel-default">
 | |
|       <div class="panel-heading">
 | |
|         <h1 class="page-header" >Paste: {{ request.args.get('paste') }}</h1>
 | |
|         <h2 class="page-header" >
 | |
|           <div>
 | |
| 
 | |
|             <div id="mymodal" class="modal fade" role="dialog">
 | |
|               <div class="modal-dialog modal-lg">
 | |
| 
 | |
|                 <!-- Modal content-->
 | |
|                 <div id="mymodalcontent" class="modal-content">
 | |
|                   <div class="modal-header" style="border-bottom: 4px solid #cccccc; background-color: #cccccc; color: #ffffff;">
 | |
|                     <p class="heading">Edit this tag</p>
 | |
| 
 | |
|                   </div>
 | |
| 
 | |
|                   <div class="modal-body">
 | |
| 
 | |
|                     <div class="form-group input-group" >
 | |
|                       <input id="ltags" style="width:850%;" type="text" name="ltags">
 | |
|                     </div>
 | |
| 
 | |
|                     <div class="btn-group btn-block">
 | |
|                         <button type="button" class="btn btn-primary dropdown-toggle btn-block" data-toggle="dropdown">Taxonomie Selection
 | |
|                           <i class="fa fa-chevron-down"></i>
 | |
|                         </button>
 | |
|                         <ul class="dropdown-menu scrollable-menu" role="menu">
 | |
|                             <li><a href="#" id="all-tags-taxonomies">All Tags <i class="fa fa-tags"></i></a></li>
 | |
|                             <li role="separator" class="divider"></li>
 | |
|                             {% for taxo in active_taxonomies %}
 | |
|                                 <li><a href="#" id="{{ taxo }}-id{{ loop.index0 }}">{{ taxo }}</a></li>
 | |
|                             {% endfor %}
 | |
|                         </ul>
 | |
|                     </div>
 | |
|                      <br/><br/>
 | |
| 
 | |
|                     <div class="form-group input-group" >
 | |
|                       <input id="ltagsgalaxies" style="width:850%;" type="text" name="ltagsgalaxies">
 | |
|                     </div>
 | |
| 
 | |
|                     <div class="btn-group btn-block">
 | |
|                         <button type="button" class="btn btn-primary dropdown-toggle btn-block" data-toggle="dropdown">Galaxy Selection
 | |
|                           <i class="fa fa-chevron-down"></i>
 | |
|                         </button>
 | |
|                         <ul class="dropdown-menu scrollable-menu" role="menu">
 | |
|                             <li><a href="#" id="all-tags-galaxies">All Tags <i class="fa fa-tags"></i></a></li>
 | |
|                             <li role="separator" class="divider"></li>
 | |
|                             {% for galaxy in active_galaxies %}
 | |
|                                 <li><a href="#" id="{{ galaxy }}-idgalax{{ loop.index0 }}">{{ galaxy }}</a></li>
 | |
|                             {% endfor %}
 | |
|                         </ul>
 | |
|                     </div>
 | |
|                   </div>
 | |
| 
 | |
|                   <div class="modal-footer">
 | |
|                     <a class="btn btn-tags pull-left" href="{{ url_for('Tags.taxonomies') }}" target="_blank">
 | |
|                         <span class="label-icon">Edit Taxonomies List </span>
 | |
|                         <i class="fa fa-wrench fa-2x"></i>
 | |
|                     </a>
 | |
|                     <a class="btn btn-tags pull-left" href="{{ url_for('Tags.galaxies') }}" target="_blank">
 | |
|                         <span class="label-icon">Edit Galaxies List</span>
 | |
|                         <i class="fa fa-rocket fa-2x"></i>
 | |
|                     </a>
 | |
|                     <button class="btn btn-primary btn-tags" onclick="addTags()">
 | |
|                         <span class="glyphicon glyphicon-plus"></span>
 | |
|                         <span class="label-icon">Add Tags</span>
 | |
|                     </button>
 | |
|                     <button type="button" class="btn btn-default" data-dismiss="modal" >Close</button>
 | |
| 
 | |
|                   </div>
 | |
|                 </div>
 | |
|               </div>
 | |
|             </div>
 | |
| 
 | |
| 
 | |
|             {% for tag in list_tags %}
 | |
|             <span class="btn btn-{{ bootstrap_label[loop.index0 % 5] }} btn-lg pull-left" data-toggle="modal" data-target="#myModal_{{ loop.index0 }}">{{ tag[0] }}</span>
 | |
| 
 | |
|               <!-- Modal edit this tag -->
 | |
|               <div class="modal fade" id="myModal_{{ loop.index0 }}" role="dialog">
 | |
|                 <div class="modal-dialog">
 | |
| 
 | |
|                   <div class="modal-content text-center">
 | |
|                     <div class="modal-header" style="border-bottom: 4px solid #cccccc; background-color: #cccccc; color: #ffffff;">
 | |
|                       <p class="heading">Edit this tag</p>
 | |
| 
 | |
|                     </div>
 | |
|                     <div class="modal-body">
 | |
|                       <span class="label label-{{ bootstrap_label[loop.index0 % 5] }}" >{{ tag[0] }}</span>
 | |
|                     </div>
 | |
|                     <div class="modal-footer center">
 | |
| 
 | |
|                         {% if not tag[2] %}
 | |
|                           <a href="{{ url_for('Tags.tag_validation') }}?paste={{ request.args.get('paste') }}&tag={{ tag[0] }}&status=tp" class="btn btn-success pull-left" data-toggle="tooltip" title="Good Detection">
 | |
|                             <span class="glyphicon glyphicon-thumbs-up "></span>
 | |
|                           </a>
 | |
|                         {% endif %}
 | |
|                         {% if tag[2] %}
 | |
|                           <button class="btn btn-success pull-left disabled" data-toggle="tooltip" title="Good Detection">
 | |
|                             <span class="glyphicon glyphicon-thumbs-up "></span>
 | |
|                           </button>
 | |
|                         {% endif %}
 | |
|                         {% if not tag[3] %}
 | |
|                           <a href="{{ url_for('Tags.tag_validation') }}?paste={{ request.args.get('paste') }}&tag={{ tag[0] }}&status=fp" class="btn btn-danger pull-left" data-toggle="tooltip" title="Bad Detection">
 | |
|                             <span class="glyphicon glyphicon-thumbs-down "></span>
 | |
|                           </a>
 | |
|                         {% endif %}
 | |
|                         {% if tag[3] %}
 | |
|                           <button class="btn btn-danger pull-left disabled" data-toggle="tooltip" title="Bad Detection">
 | |
|                             <span class="glyphicon glyphicon-thumbs-down "></span>
 | |
|                           </button>
 | |
|                         {% endif %}
 | |
| 
 | |
|                       {% if tag[1] %}
 | |
|                         <a href="{{ url_for('Tags.confirm_tag') }}?paste={{ request.args.get('paste') }}&tag={{ tag[0] }}" class="btn btn-primary">
 | |
|                           <span class="glyphicon glyphicon-ok "></span> Confirm this Tag
 | |
|                         </a>
 | |
|                       {% endif %}
 | |
|                       <a href="{{ url_for('Tags.remove_tag') }}?paste={{ request.args.get('paste') }}&tag={{ tag[0] }}" class="btn btn-danger">
 | |
|                         <span class="glyphicon glyphicon-trash "></span> Delete this Tag
 | |
|                       </a>
 | |
|                     </div>
 | |
|                   </div>
 | |
| 
 | |
|                 </div>
 | |
|               </div>
 | |
| 
 | |
|             {%  endfor %}
 | |
|             <button type="button" class="btn btn-light btn-lg" data-toggle="modal" data-target="#mymodal" data-url="{{ url_for('Tags.taxonomies') }}">
 | |
|               <span class="glyphicon glyphicon-plus "></span>
 | |
|             </button>
 | |
|           </div>
 | |
|         </h2>
 | |
| 
 | |
|         <table class="table table-condensed">
 | |
|           <thead>
 | |
|             <tr>
 | |
|               <th>Date</th>
 | |
|               <th>Source</th>
 | |
|               <th>Encoding</th>
 | |
|               <th>Language</th>
 | |
|               <th>Size (Kb)</th>
 | |
|               <th>Mime</th>
 | |
|               <th>Number of lines</th>
 | |
|               <th>Max line length</th>
 | |
|             </tr>
 | |
|           </thead>
 | |
|           <tbody>
 | |
|             <tr>
 | |
|             <td>{{ date }}</td>
 | |
|             <td>{{ source }}</td>
 | |
|             <td>{{ encoding }}</td>
 | |
|             <td>{{ language }}</td>
 | |
|             <td>{{ size }}</td>
 | |
|             <td>{{ mime }}</td>
 | |
|             <td>{{ lineinfo.0 }}</td>
 | |
|             <td>{{ lineinfo.1 }}</td>
 | |
|             </tr>
 | |
|           </tbody>
 | |
|         </table>
 | |
| 
 | |
|         <div>
 | |
|           {% if misp %}
 | |
|           <button class="btn btn-default btn-lg" data-toggle="modal" data-target="#myModal_MISP">
 | |
|             Create
 | |
|             <img id="misp-logo" src="{{url_for('static', filename='image/misp-logo.png') }}" height="32">
 | |
|             Event
 | |
|           </button>
 | |
|           <!-- Modal MISP-->
 | |
|           <div class="modal fade" id="myModal_MISP" role="dialog">
 | |
|             <div class="modal-dialog">
 | |
| 
 | |
|               <div class="modal-content">
 | |
|                 <div class="modal-header text-center">
 | |
|                   <img id="misp-logo" src="{{url_for('static', filename='image/misp-logo.png') }}" >
 | |
|                 </div>
 | |
|                 <div class="modal-body">
 | |
| 
 | |
|                   <form method="post" action="{{ url_for('PasteSubmit.create_misp_event') }}" target="_blank">
 | |
| 
 | |
|                   <div class="input select required">
 | |
|                     <label for="EventDistribution">Distribution</label>
 | |
|                     <select name="misp_data[Event][distribution]" id="EventDistribution" required="required">
 | |
|                       <option value="0" selected="selected">Your organisation only</option>
 | |
|                       <option value="1">This community only</option>
 | |
|                       <option value="2">Connected communities</option>
 | |
|                       <option value="3">All communities</option>
 | |
|                     </select>
 | |
|                   </div>
 | |
|                   <div class="input clear required">
 | |
|                     <label for="EventThreatLevelId">Threat Level</label>
 | |
|                     <select name="misp_data[Event][threat_level_id]" id="EventThreatLevelId" required="required">
 | |
|                       <option value="1">High</option>
 | |
|                       <option value="2" selected="selected">Medium</option>
 | |
|                       <option value="3">Low</option>
 | |
|                       <option value="4">Undefined</option>
 | |
|                     </select>
 | |
|                   </div>
 | |
|                   <div class="input select required">
 | |
|                     <label for="EventAnalysis">Analysis</label>
 | |
|                     <select name="misp_data[Event][analysis]" id="EventAnalysis" required="required">
 | |
|                       <option value="0">Initial</option>
 | |
|                       <option value="1">Ongoing</option>
 | |
|                       <option value="2">Completed</option>
 | |
|                     </select>
 | |
|                   </div>
 | |
|                   <div class="clear required">
 | |
|                     <label for="EventInfo">Event Info</label>
 | |
|                     <input name="misp_data[Event][info]" class="form-control span6" placeholder="Quick Event Description or Tracking Info" type="text" id="EventInfo" required="required"/>
 | |
|                   </div>
 | |
|                   <div class="clear">
 | |
|                     <label for="EventInfo">Publish Event</label>
 | |
|                     <input type="checkbox" value="True" id="misp_publish" name="misp_publish" >
 | |
|                   </div>
 | |
|                   <input type="hidden" id="paste" name="paste" value="{{ request.args.get('paste') }}">
 | |
| 
 | |
|                   {% if misp_eventid %}
 | |
|                   <br>
 | |
|                   <div class="list-group" id="misp_event">
 | |
|                     <li class="list-group-item active">MISP Events already Created</li>
 | |
|                       <a target="_blank" href="{{ misp_url }}" class="list-group-item">{{ misp_url }}</a></div>
 | |
|                   {% endif %}
 | |
| 
 | |
|                 </div>
 | |
|                 <div class="modal-footer center">
 | |
|                   <button class="btn btn-primary">
 | |
|                     <span class="glyphicon glyphicon-ok "></span> Create Event
 | |
|                   </button>
 | |
| 
 | |
|                 </form>
 | |
|                   <button type="button" class="btn btn-default" data-dismiss="modal" >Close</button>
 | |
| 
 | |
|                 </div>
 | |
|               </div>
 | |
| 
 | |
|             </div>
 | |
|           </div>
 | |
|           {% endif %}
 | |
| 
 | |
|           {% if hive %}
 | |
|           <button class="btn btn-primary btn-lg" data-toggle="modal" data-target="#myModal_hive">
 | |
|             Create
 | |
|             <img id="thehive-icon" src="{{url_for('static', filename='image/thehive_icon.png') }}">
 | |
|             Case
 | |
|           </button>
 | |
|           <!-- Modal HIVE-->
 | |
|           <div class="modal fade" id="myModal_hive" role="dialog">
 | |
|             <div class="modal-dialog">
 | |
| 
 | |
|               <div class="modal-content">
 | |
|                 <div class="modal-header text-center">
 | |
|                   <img id="misp-logo" src="{{url_for('static', filename='image/thehive-logo.png') }}" width="500" >
 | |
|                 </div>
 | |
| 
 | |
|                 <div class="modal-body">
 | |
| 
 | |
|                   <form method="post" action="{{ url_for('PasteSubmit.create_hive_case') }}" target="_blank">
 | |
| 
 | |
|                   <div class="input clear required">
 | |
|                     <label for="EventThreatLevelId">Threat Level</label>
 | |
|                     <select name="threat_level_hive" id="EventThreatLevelId" required="required">
 | |
|                       <option value="1">High</option>
 | |
|                       <option value="2" selected="selected">Medium</option>
 | |
|                       <option value="3">Low</option>
 | |
|                     </select>
 | |
|                   </div>
 | |
|                   <div class="input select required">
 | |
|                     <label for="TLP">TLP</label>
 | |
|                     <select name="hive_tlp" id="hive_tlp" required="required" class="selectpicker">
 | |
|                       <option value="0">White</option>
 | |
|                       <option value="1">Green</option>
 | |
|                       <option value="2" selected="selected">Amber</option>
 | |
|                       <option value="3">Red</option>
 | |
|                     </select>
 | |
|                   </div>
 | |
|                   <div class="clear required">
 | |
|                     <label for="hive_case_title">Title</label>
 | |
|                     <input name="hive_case_title" class="form-control span6" placeholder="Title" type="text" id="hive_case_title" required="required"/>
 | |
|                   </div>
 | |
|                   <div class="clear required">
 | |
|                     <label for="hive_description">Description</label>
 | |
|                     <input name="hive_description" class="form-control span6" placeholder="Quick Case Description" type="text" id="hive_description" required="required"/>
 | |
|                   </div>
 | |
|                   <input type="hidden" id="paste" name="paste" value="{{ request.args.get('paste') }}">
 | |
| 
 | |
|                   {% if hive_caseid %}
 | |
|                   <br>
 | |
|                   <div class="list-group" id="misp_event">
 | |
|                     <li class="list-group-item active">The Hive Case already Created</li>
 | |
|                       <a target="_blank" href="{{ hive_url }}" class="list-group-item">{{ hive_url }}</a></div>
 | |
|                   {% endif %}
 | |
| 
 | |
|                 </div>
 | |
|                 <div class="modal-footer center">
 | |
|                   <button href="" class="btn btn-primary">
 | |
|                     <span class="glyphicon glyphicon-ok "></span> Create Case
 | |
|                   </button>
 | |
| 
 | |
|                 </form>
 | |
|                   <button type="button" class="btn btn-default" data-dismiss="modal" >Close</button>
 | |
| 
 | |
|                 </div>
 | |
|               </div>
 | |
| 
 | |
|             </div>
 | |
|           </div>
 | |
|           {% endif %}
 | |
|         </div>
 | |
| 
 | |
|       </div>
 | |
| 
 | |
|     <div class="panel-body" id="panel-body">
 | |
| 
 | |
|       {% if  duplicate_list|length == 0 %}
 | |
|       {% else %}
 | |
|           <h3> Duplicate list: </h3>
 | |
|           <table id="tableDup" class="table table-striped table-bordered">
 | |
|           {% set i = 0 %}
 | |
|           <thead>
 | |
|           <tr>
 | |
|               <th>Hash type</th>
 | |
|               <th>Paste info</th>
 | |
|               <th>Date</th>
 | |
|               <th>Path</th>
 | |
|               <th>Action</th>
 | |
|           </tr>
 | |
|           </thead>
 | |
|           <tbody>
 | |
|           {% for dup_path in duplicate_list %}
 | |
|               <tr>
 | |
|                   <td>{{ hashtype_list[loop.index - 1] }}</td>
 | |
|                   <td>Similarity: {{ simil_list[loop.index - 1] }}%</td>
 | |
|                   <td>{{ date_list[loop.index - 1] }}</td>
 | |
|                   <td><a target="_blank" href="{{ url_for('showsavedpastes.showsavedpaste') }}?paste={{ dup_path }}" id='dup_path'>{{ dup_path }}</a></td>
 | |
|                   <td><a target="_blank" href="{{ url_for('showsavedpastes.showDiff') }}?s1={{ request.args.get('paste') }}&s2={{ dup_path }}" class="fa fa-columns" title="Show differences"></a></td>
 | |
|               </tr>
 | |
|           {% endfor %}
 | |
|           </tbody>
 | |
|           </table>
 | |
|       {% endif %}
 | |
| 
 | |
|       {% if  l_64|length != 0 %}
 | |
|           <h3> Hash files: </h3>
 | |
|           <table id="tableb64" class="red_table table table-striped table-bordered">
 | |
|           <thead>
 | |
|           <tr>
 | |
|               <th>estimated type</th>
 | |
|               <th>hash</th>
 | |
|               <th>saved_path</th>
 | |
|               <th>Virus Total</th>
 | |
|           </tr>
 | |
|           </thead>
 | |
|           <tbody>
 | |
|           {% for b64 in l_64 %}
 | |
|               <tr>
 | |
|                   <td><i class="fa {{ b64[0] }}"></i>  {{ b64[1] }}</td>
 | |
|                   <td><a target="_blank" href="{{ url_for('hashDecoded.showHash') }}?hash={{ b64[2] }}">{{ b64[2] }}</a> ({{ b64[4] }})</td>
 | |
|                   <td>{{ b64[3] }}</td>
 | |
|                   <td style="text-align:center;">
 | |
|                     {% if  vt_enabled %}
 | |
|                       {% if not b64[5] %}
 | |
|                         <darkbutton_{{ b64[2] }}>
 | |
|                           <button id="submit_vt_{{ b64[2] }}" class="btn btn-primary" onclick="sendFileToVT('{{ b64[2] }}')">
 | |
|                             <i class="fa fa-paper-plane"></i> Send this file to VT
 | |
|                           </button>
 | |
|                         </darkbutton_{{ b64[2] }}>
 | |
|                       {% else %}
 | |
|                         <a class="btn btn-primary" target="_blank" href="{{ b64[6] }}"><i class="fa fa-link"> VT Report</i></a>
 | |
|                       {% endif %}
 | |
|                       <button class="btn btn-default" onclick="updateVTReport('{{ b64[2] }}')">
 | |
|                         <div id="report_vt_{{ b64[2] }}"><span class="glyphicon glyphicon-refresh"></span> {{ b64[7] }}</div>
 | |
|                       </button>
 | |
|                     {% else %}
 | |
|                       Virus Total submission is disabled
 | |
|                     {% endif %}
 | |
|                   </td>
 | |
|               </tr>
 | |
|           {% endfor %}
 | |
|           </tbody>
 | |
|           </table>
 | |
|       {% endif %}
 | |
| 
 | |
|         {% if crawler_metadata['get_metadata'] %}
 | |
|           <div class="row">
 | |
| 
 | |
|             <div class="col-md-5">
 | |
|               <div class="row">
 | |
|                 <div class="panel panel-info">
 | |
|       						<div class="panel-heading">
 | |
|                     <i class="fa fa-eye-slash"></i> Crawled Paste
 | |
|       						</div>
 | |
| 
 | |
|                       <table class="table table-hover table-striped">
 | |
|                         <tbody>
 | |
|                           <tr>
 | |
|                             <td>Domain</td>
 | |
|                             <td><a target="_blank" href="{{ url_for('hiddenServices.onion_domain') }}?onion_domain={{ crawler_metadata['domain'] }}" id='onion_domain'>{{ crawler_metadata['domain'] }}</a></td>
 | |
|                           </tr>
 | |
|                           <tr>
 | |
|                             <td>Father</td>
 | |
|                             <td><a target="_blank" href="{{ url_for('showsavedpastes.showsavedpaste') }}?paste={{ crawler_metadata['paste_father'] }}" id='paste_father'>{{ crawler_metadata['paste_father'] }}</a></td>
 | |
|                           </tr>
 | |
|                           <tr>
 | |
|                             <td>Source link</td>
 | |
|                             <td>{{ crawler_metadata['real_link'] }}</td>
 | |
|                           </tr>
 | |
|                         </tbody>
 | |
|                       </table>
 | |
|                 </div>
 | |
|               </div>
 | |
|             </div>
 | |
| 
 | |
|             <div class="col-md-7">
 | |
|               <div class="panel panel-info" style="text-align:center;">
 | |
|                 <div class="panel-heading">
 | |
|                     <div class="row">
 | |
|                       <div class="col-md-8">
 | |
|                         <input class="center" id="blocks" type="range" min="1" max="50" value="13">
 | |
|                       </div>
 | |
|                       <div class="col-md-4">
 | |
|                         <button class="btn btn-primary btn-tags" onclick="blocks.value=50;pixelate();">
 | |
|                             <span class="glyphicon glyphicon-zoom-in"></span>
 | |
|                             <span class="label-icon">Full resolution</span>
 | |
|                         </button>
 | |
|                       </div>
 | |
|                     </div>
 | |
|                   </div>
 | |
|                 </div>
 | |
|               <canvas id="canvas" style="width:100%;"></canvas>
 | |
|             </div>
 | |
|           </div>
 | |
|         {% endif %}
 | |
| 
 | |
|         <h3> Content: </h3>
 | |
|         <a href="{{ url_for('showsavedpastes.showsavedrawpaste') }}?paste={{ request.args.get('paste') }}" id='raw_paste' > [Raw content] </a>
 | |
|         <p data-initsize="{{ initsize }}"> <pre id="paste-holder">{{ content }}</pre></p>
 | |
|     </div>
 | |
|   </div>
 | |
| 
 | |
| </body>
 | |
| 
 | |
| <script>
 | |
|     var ltags
 | |
|     var ltagsgalaxies
 | |
|     $(document).ready(function(){
 | |
| 
 | |
|         $.getJSON("{{ url_for('Tags.get_all_tags_taxonomies') }}",
 | |
|           function(data) {
 | |
| 
 | |
|             ltags = $('#ltags').tagSuggest({
 | |
|               data: data,
 | |
|               maxDropHeight: 200,
 | |
|               name: 'ltags'
 | |
|             });
 | |
|           });
 | |
| 
 | |
|         $.getJSON("{{ url_for('Tags.get_all_tags_galaxy') }}",
 | |
|           function(data) {
 | |
| 
 | |
|             ltagsgalaxies = $('#ltagsgalaxies').tagSuggest({
 | |
|               data: data,
 | |
|               maxDropHeight: 200,
 | |
|               name: 'ltagsgalaxies'
 | |
|             });
 | |
|           });
 | |
| 
 | |
|         $('#tableDup').DataTable();
 | |
|         $('#tableb64').DataTable({
 | |
|   				"aLengthMenu": [[5, 10, 15, -1], [5, 10, 15, "All"]],
 | |
|   				"iDisplayLength": 5,
 | |
|   				"order": [[ 1, "asc" ]]
 | |
|   			});
 | |
|     });
 | |
| </script>
 | |
| 
 | |
| <script>
 | |
|   function updateVTReport(hash) {
 | |
|     //updateReport
 | |
|     $.getJSON("{{ url_for('hashDecoded.update_vt_result') }}?hash="+hash,
 | |
|       function(data) {
 | |
|         content = '<span class="glyphicon glyphicon-refresh"></span> ' +data['report_vt']
 | |
|         $( "#report_vt_"+hash ).html(content);
 | |
|     });
 | |
|   }
 | |
| 
 | |
|   function sendFileToVT(hash) {
 | |
|     //send file to vt
 | |
|     $.getJSON("{{ url_for('hashDecoded.send_file_to_vt_js') }}?hash="+hash,
 | |
|       function(data) {
 | |
|         var content = '<a id="submit_vt_'+hash+'" class="btn btn-primary" target="_blank" href="'+ data['vt_link'] +'"><i class="fa fa-link"> '+ ' VT Report' +'</i></a>';
 | |
|         $('#submit_vt_'+hash).remove();
 | |
|         $('darkbutton_'+hash).append(content);
 | |
|     });
 | |
|   }
 | |
| 
 | |
| </script>
 | |
| 
 | |
| <script>
 | |
|     jQuery("#all-tags-taxonomies").click(function(e){
 | |
|       //change input tags list
 | |
|       $.getJSON("{{ url_for('Tags.get_all_tags_taxonomies') }}",
 | |
|         function(data) {
 | |
|           ltags.setData(data)
 | |
|       });
 | |
|     });
 | |
| 
 | |
| </script>
 | |
| <script>
 | |
|     jQuery("#all-tags-galaxies").click(function(e){
 | |
|       $.getJSON("{{ url_for('Tags.get_all_tags_galaxy') }}",
 | |
|         function(data) {
 | |
|           ltagsgalaxies.setData(data)
 | |
|       });
 | |
|     });
 | |
| 
 | |
| </script>
 | |
| 
 | |
| <script>
 | |
|     function addTags() {
 | |
|       var tags = ltags.getValue()
 | |
|       var tagsgalaxy = ltagsgalaxies.getValue()
 | |
|       var path = '{{ request.args.get('paste') }}'
 | |
|       window.location.replace("{{ url_for('Tags.addTags') }}?tags=" + tags + "&tagsgalaxies=" + tagsgalaxy + "&path=" + path);
 | |
|     }
 | |
| 
 | |
| </script>
 | |
| 
 | |
| <script>
 | |
| {% for taxo in active_taxonomies %}
 | |
|     jQuery("#{{ taxo }}-id{{ loop.index0 }}").click(function(e){
 | |
|       $.getJSON("{{ url_for('Tags.get_tags_taxonomie') }}?taxonomie={{ taxo }}",
 | |
|         function(data) {
 | |
|           ltags.setData(data)
 | |
|   });
 | |
| });
 | |
| {% endfor %}
 | |
| </script>
 | |
| <script>
 | |
| {% for galaxy in active_galaxies %}
 | |
|     jQuery("#{{ galaxy }}-idgalax{{ loop.index0 }}").click(function(e){
 | |
|       $.getJSON("{{ url_for('Tags.get_tags_galaxy') }}?galaxy={{ galaxy }}",
 | |
|         function(data) {
 | |
|           ltagsgalaxies.setData(data)
 | |
|   });
 | |
| });
 | |
| {% endfor %}
 | |
| </script>
 | |
| 
 | |
| <script>
 | |
| var ctx = canvas.getContext('2d'), img = new Image();
 | |
| 
 | |
| /// turn off image smoothing
 | |
| ctx.webkitImageSmoothingEnabled = false;
 | |
| ctx.imageSmoothingEnabled = false;
 | |
| 
 | |
| img.onload = pixelate;
 | |
| img.addEventListener("error", img_error);
 | |
| var draw_img = false;
 | |
| 
 | |
| img.src = "{{ url_for('showsavedpastes.screenshot', filename=crawler_metadata['screenshot']) }}";
 | |
| 
 | |
| function pixelate() {
 | |
| 
 | |
|   /// use slider value
 | |
|   if( blocks.value == 50 ){
 | |
|       size = 1;
 | |
|   } else {
 | |
|       var size = (blocks.value) * 0.01;
 | |
|   }
 | |
| 
 | |
|   canvas.width = img.width;
 | |
|   canvas.height = img.height;
 | |
| 
 | |
|   /// cache scaled width and height
 | |
|   w = canvas.width * size;
 | |
|   h = canvas.height * size;
 | |
| 
 | |
|   /// draw original image to the scaled size
 | |
|   ctx.drawImage(img, 0, 0, w, h);
 | |
| 
 | |
|   /// pixelated
 | |
|   ctx.drawImage(canvas, 0, 0, w, h, 0, 0, canvas.width, canvas.height);
 | |
| 
 | |
| }
 | |
| 
 | |
| function img_error() {
 | |
|   img.onerror=null;
 | |
|   img.src="{{ url_for('static', filename='image/AIL.png') }}";
 | |
|   blocks.value = 50;
 | |
|   pixelate;
 | |
| }
 | |
| 
 | |
| blocks.addEventListener('change', pixelate, false);
 | |
| </script>
 | |
| 
 | |
| </html>
 |