kostenloser Webspace werbefrei: lima-city


Encoded JS Injection

lima-cityForumDie eigene HomepageSicherheit im Internet

  1. Autor dieses Themas

    kozak

    Kostenloser Webspace von kozak

    kozak hat kostenlosen Webspace.

    In regelmäßigen Abständen werden auf meinem Server dubiose URL's aufgerufen. Wenn ich es richtig interpretiere, sind das eine Art "JS Injection". Oder gibt's dafür einen extra Begriff? ( Habe das von SQL Injection abgeleitet.)

    Sieht dann z.B. so aus:
    1xx.xxx.xxx.xxx - - [04/Apr/2017:12:41:44 +0200] "\x5Cb3\x0F\xA3\x9D\xCC\xF0\xC4f\x1E\xB8\xE4\x9F\xD4\xA7\xFC\xF7\xF2\xA6[\x0Bzd\x1Fa\x97Y\x22\x1B\xF4\x05O\xE03\x826\x9F\xAE0QU\xA7\xE1\x15P_\xF2\x1AbU{-\x1D\xE8-\xC3\x94\xEFn\xC2\xF4\x16\xFA" 400 166 "-" "-"


    Wenn man das durch den Obfuscator jagt, kommt dann schließlich
    eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('\\4\\k\\f\\e\\d\\g\\h\\j\\c\\b\\0\\5\\1\\6\\7\\2\\a[\\9\\8\\i\\B\\w\\3\\l\\x\\y\\0\\A\\1\\z\\u\\2\\t{-\\o\\n-\\m\\p\\q\\s\\3\\r\\v',38,38,'x9F|xA7|xF2|xF4|x5Cb3|xD4|xFC|xF7|x1Fa|x0Bzd|xA6|xE4|xB8|xCC|x9D|xA3|xF0|xC4f|x97Y|x1E|x0F|x05O|xC3|xE8|x1D|x94|xEFn|x16|xC2|x1AbU|x15P_|xFA|x1B|xE03|x826|xE1|xAE0QU|x22'.split('|'),0,{}))


    Was versucht man damit ( nicht nur mit diesem Stück Code, sondern allgemein dieser Art "Attacke" ) zu bezwecken? SQL Injection verstehe ich noch. Hier steige ich leider aus. Das einzige halt was direkt ins Auge springt, sind die reguläre Ausdrücke.

    Fail2Ban filtert ( bzw. blockt ) diese Attacken zwar fein raus. Aber ich möchte verstehen, was der Angreifer damit bezweckt und wo ich dadurch evtl. an der Sicherheit schrauben sollte.
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. mein-wunschname

    mein-wunschname hat kostenlosen Webspace.

    Obfuscator? Ich dachte immer, der würde dazu dienen, dass man den Code dann nicht mehr "lesen" kann.
    Aber egal. Was hinter dem Code steckt weiß ich auch nicht, aber da ich einen ähnlichen habe, würde ich gern wissen, wo du den "dechiffriert" hast.
    Grundsätzlich teile ich deine Neugier.
  4. Autor dieses Themas

    kozak

    Kostenloser Webspace von kozak

    kozak hat kostenlosen Webspace.

    Naja, der ist schon "obfuscated". Denn leserlich ist er nicht. Allerdings ist er noch leicht verschlüsselt. (Base64?)

    Es gibt einige Seiten, die das online übersetzten können, z.B. diese hier: http://www.danstools.com/javascript-obfuscate/index.php

    Ich würde gerne wissen was man damit erreichen möchte.
  5. Ja, das ist wirklich sehr verwunderlich.

    Ich schaue zunächst einmal auf den Auszug aus dem access_log. Offensichtlich hat ein Client mit dem Webserver verbunden aber keinen gültigen Request abgesendet sondern nur eine fragwürdige Zeichenkette verschickt. Der Webserver hat das zurecht mit 400 Bad Request beantwortet.

    Diese fragwürdige Zeichenkette enthält viele Sequenzen in der Form "\x**" wobei die beiden Sterne jeweils einer Hexziffer entsprechen. Das erinnert mich sofort an PHP, denn dort kann man Sonderzeichen auf diese Weise kodieren. Dekodiere ich das ganze, erhalte ich 64 Byte für mich zufällig scheinende binäre Daten, aus denen ich nichts weiter schließen kann.

    Ich vermute einen unabsichtlichen Fehler irgendeines Programmes da draußen im Netz, aus dem keine Gefahr hervorgeht. Mir ist nicht klar, wie du das ganze mit Javascript und einem Javascript Obfuscator in Verbindung bringst oder woraus du schließt, dass Fail2Ban die Verbindung blockiert hätte.

    Für weitere Analyse würde ich mehrere dieser Requests sammeln. (kozak und mein-wunschname, ihr könnt das gern gemeinsam tun) Vielleicht lässt sich dann ein Schema erkennen. Außerdem könnte man versuchen, die IP-Adresse zurück zu verfolgen, z.B. über einen Reverse Lookup oder durch geografisches Eingrenzen.
  6. Autor dieses Themas

    kozak

    Kostenloser Webspace von kozak

    kozak hat kostenlosen Webspace.

    Ich habe i-wann eine Filter-Regel für Fail2Ban im WWW aufgeschnappt, die auf JS reagieren soll.
    [Definition]
    
    failregex = ^<HOST> -.*GET.*(\.php|\.asp|\.exe|\.pl|\.cgi|\.scgi)
    
    ignoreregex =

    Die kommt bei mir zum Einsatz und bei diesen Art von URL Aurufen schlägt die zu. ( IP's verschleiere ich erstmals, kP ob ich die veröffentlichen darf. )
    [ Auszug ]
    169.xxx.xxx.xxx - - [03/Apr/2017:15:37:34 +0200] "\x90\xB5V%\xC9r\xE2\xF48U\xB7\xDBoJ\xA9\xDA}\xE7\x89\x1E\xF0\xECc\x9C\x8F\xF4_\x0F@" 400 166 "-" "-"
    47.xxx.xxx.xxx - - [31/Mar/2017:03:33:30 +0200] "\x04\x01\x00P\xC0c\xF660\x00" 400 166 "-" "-"
    47.xxx.xxx.xxx - - [31/Mar/2017:03:33:31 +0200] "\x05\x01\x00" 400 166 "-" "-"
    180.xxx.xxx.xxx - - [30/Mar/2017:05:30:21 +0200] "\x04\x01\x00P\xB4\xA3qR\x00" 400 166 "-" "-"


    Da diese Regel in Verbindung mit JS gebracht war, hatte ich in diese Richtung gegraben und i-wann auf die o.g. Seite gestoßen, die daraus JS ( sieht für mich zumindest so aus ) rekonstruieren kann.

    Ich will hier nichts festlegen und tappe in der Dunkelheit. Will bloß verstehen was diese Aufrufe zu bedeuten haben. Vlt. missverstehe ich auch was. Ist nicht ausgeschlossen.

    Für einen oder mehrere "verirrte" Clients sieht es für mich nicht aus. Dafür kommen die zu häufig vor und von unterschiedlichen IP-Ranges.
  7. mein-wunschname

    mein-wunschname hat kostenlosen Webspace.

    Also ich hatte vor kurzem:
    \xdf\x8d\x85\x1f\xdc\x16)\x0c\xb2\x89\x15\t rz\xe0\xf91.\xb2\tK\xd0m\x8e|\xded\"R\x9f`\x1b\v?\xbe-\xf9)\xe6\xbeE#\xea\x88'\xc4\xe9\x9b\xbd_\xfe\rZ\xdb\xc0g\x9dG\x96\xe8\xc3

    Die Abfrage kam von
    http://169.229.3.91/
    Dazu findet man auch:
    https://security.stackexchange.com/questions/115168/weird-log-record-from-researchscan1-eecs-berkeley-edu-169-229-3-91-is-this-a
  8. Der verlinkte Artikel von mein-wunschname auf Stackexchange scheint schlüssig, demnach bedeuten diese Requests auch keine Bedrohung.

    Ich muss mich noch einmal korrigieren, die maskierten Sonderzeichen sind nicht vom Client maskiert sondern vom Webserver, um sie in das access_log zu schreiben. Und die Länge von 64 byte ist wohl auch nicht konsistent, wenn man die von kozak veröffentlichten Zugriffe betrachtet.

    Ich würde das ganze also einfach ignorieren, eine Gefahr besteht wie gesagt nicht.
  9. Autor dieses Themas

    kozak

    Kostenloser Webspace von kozak

    kozak hat kostenlosen Webspace.

    Yope, hast recht. Bring Licht ins Dunkel. Dann wäre die Sache geklärt.
    Ich müsste meine Paranoia ein wenig zurück drehen. :biggrin:
  10. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!