Passwortabfrage mir HTML

- OCinside.de PC Forum
https://www.ocinside.de

-- Offtopic
https://www.forum-inside.de/forums.cgi?forum=7

--- Passwortabfrage mir HTML
https://www.forum-inside.de/topic.cgi?forum=7&topic=2951

Ein Ausdruck des Beitrags mit 34 Antworten ergibt bei 3 Antworten pro Seite ca. 12 DIN A4 Seiten. Das entspricht bei 80 g/m² ca. 59.88 Gramm Papier.


-- Veröffentlicht durch MilleniumEli1 am 10:34 am 29. Feb. 2004

mmm, ich habe beim besten willen keine ahnung wie es gehen soll!

das einzige was ich mir vorstellen kann ist mit telnet oder ssh zu connecten. ssh port ist auch offen, aber da muss dir auch erstmal nen username und pw zukommen...
weiss nicht so genau :noidea:


-- Veröffentlicht durch nubbi am 21:17 am 27. Feb. 2004

nabend :D

hab bei lvl 8 net mehr weiter gemacht ^^ mach ich vielleicht heut abend mal ;) hab level 7 mit PuTTY gemacht. das is sozusagen ein telnet-client in gut und mit mehr funktionen :) aber darum ging es ja ;)

bei 8 schon was rausbekommen?

nubbi


-- Veröffentlicht durch MilleniumEli1 am 18:02 am 26. Feb. 2004

sauber :) das mit dem codieren war ja wohl assi ;)

level 7 hab ich auch geschafft, auch wenn etwas unprofessionell via telnet ;)

aber lvl 8 scheint hart zu sein! schon ne idee wie man das anstellen könnte?


-- Veröffentlicht durch nubbi am 19:38 am 25. Feb. 2004

hmmm
a=0; b=1? :noidea: oder andersrum?! vielleicht sind das binärzahlen

da käme dann das hier raus:

Code
(USERNAME)
00011 00000 00001 01101 01011 00001

(PASSWORD)
00100 01100 00010 10000 10110 01110 10010 01000 01101 01100 10000 00000 10100 01001 10001

(PAGE)
10101 00101 01001 01101 00111 00010


in dezimal wären das dann:

Code
3 0 1 13 11 1

4 12 2 16 22 14 18 8 13 12 16 0 20 9 17

21 5 9 13 7 2


äädit: meinst du B*C*N**N is ein eigenname? also, dass n paar buchstaben rausgenommen wurden, damits nich zu einfach wird? :noidea:

(Geändert von nubbi um 20:15 am Feb. 25, 2004)

edit2 das sähe doch mal gut aus

(Geändert von nubbi um 20:22 am Feb. 25, 2004)

edit3: Habs raus :partypeople:

(Geändert von nubbi um 20:29 am Feb. 25, 2004)

edit4: so, level 7 auch gemeistert, war relativ einfach (spoofing-time:lol:)
aber bei level 8 hänge ich jetzt :blubb:

(Geändert von nubbi um 21:08 am Feb. 25, 2004)


-- Veröffentlicht durch MilleniumEli1 am 19:04 am 25. Feb. 2004

okay, dann mal zu meinem stand der dinge ;) also das decompilieren geht net, anscheinend weil es gepackt ist. Das prog holt sich anscheinend die infos zum pw checken von

http://www.try2hack.nl/levels/level6.data
via http

aber damit kann ich nicht so richtig was anfangen ;)


-- Veröffentlicht durch nubbi am 18:53 am 25. Feb. 2004

naja, langwierige sache halt :blubb:
bin an level 6 dran ;)
hm, die exe ist mit irgendwas gepackt :noidea: und es ist weder UPX noch VBShrink

(Geändert von nubbi um 18:56 am Feb. 25, 2004)

edit: man könnte es mit nem packetsniffer probieren :blubb: hab aber eigentlich keine lust dazu :lol:

(Geändert von nubbi um 19:01 am Feb. 25, 2004)


-- Veröffentlicht durch MilleniumEli1 am 18:50 am 25. Feb. 2004

axo! danke ;) aber ist trotzdem schwer rauszufiltern denk ich mal, oder? ich glaub ich muss mich früher oder später mal wieder mit asm beschäftigen ;)

wenn du in level 6 fortschritte machst sag mal bitte bescheid ;)


-- Veröffentlicht durch nubbi am 18:44 am 25. Feb. 2004

naja, er legt dann den kompletten zusammengesetzten string (die ganzen Mids) in einem register ab, weil man in assembler immer nur 2 strings vergleichen kann. zum beispiel sieht das dann so aus


[API --> Textbox auslesen, wird in eax abgelegt]

cmp eax, ebx                     '[hier wird verglichen]
je XXXXXXXXh                    'jump if equal


erklärung:
in eax liegt der string aus der box, in ebx der zusammengesetzte. der befehl cmp vergleicht die register. sind die beiden gleich wird bei befehl je gesprungen. wenn nicht, dann halt nicht.

(Geändert von nubbi um 18:45 am Feb. 25, 2004)


(Geändert von nubbi um 18:45 am Feb. 25, 2004)


(Geändert von nubbi um 18:46 am Feb. 25, 2004)


-- Veröffentlicht durch MilleniumEli1 am 18:39 am 25. Feb. 2004

jo :blubb:
aber das hilft in sofern das du das ganze net mehr unterm editor rausfinden kannst. unter editor siehst du nämlich nur die konstanten ;) und die beiden die da auch noch im klartext stehen sind ja fake ;)

kann man sowas denn auch wirklich mittem debugger rausfinden? das wird doch super kompliziert mit den ganzen mid befehlen und so, oder?

level 6 suckt irgendwie ;)


-- Veröffentlicht durch nubbi am 18:36 am 25. Feb. 2004

habs schon raus :lol: hatte den decompiler gerade gefunden :D
besonders der trick mit den konstanten is ja suuuuper :lol:

(Geändert von nubbi um 18:37 am Feb. 25, 2004)


-- Veröffentlicht durch MilleniumEli1 am 18:29 am 25. Feb. 2004

echt? das wusst ich aber auch noch net :)
ich poste einfach mal den code, dann brauchste net suchen!

Code

' LEVEL5.FRM
Option Explicit

Sub cmdLogin_Click ()
If  edtUsername = Mid(gc0006, 56, 1) & Mid(gc0006, 28, 1) & Mid(gc0006, 35, 1) & Mid(gc0006, 3, 1) & Mid(gc0006, 44, 1) & Mid(gc0006, 11, 1) & Mid(gc0006, 13, 1) & Mid(gc0006, 21, 1) Then
 If  edtPassword = Mid(gc0006, 45, 1) & Mid(gc0006, 48, 1) & Mid(gc0006, 25, 1) & Mid(gc0006, 32, 1) & Mid(gc0006, 15, 1) & Mid(gc0006, 40, 1) & Mid(gc0006, 25, 1) & Mid(gc0006, 14, 1) & Mid(gc0006, 19, 1) Then
   MsgBox "Level 6 can be found at: " & Left$(gc000A, 37) & Mid(gc0006, 21, 1) & Mid(gc0006, 14, 1) & Mid(gc0006, 29, 1) & Mid(gc0006, 32, 1) & Mid(gc0006, 12, 1) & Mid(gc0006, 14, 1) & Mid(gc000A, 44, 6), 0, "Horray!"
   End
 End If
End If
MsgBox "Invalid username and/or password!", 0, "ERROR!"
End Sub

Sub Form_Load ()
Me.Move (Screen.Width - Me.Width) / 2, (Screen.Height - Me.Height) / 2
End Sub


Code
' main.txt - global definitions
Global Const gc0006 = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,:;-*+=~|&!_$#@()[]{}<\/>"
Global Const gc000A = "http://www.try2hack.nl/levels/level6-ksghvb.xhtml"


Code

' Module1
Option Explicit
Const c000A = " txtUsername=AlmostAHacker "
Const c000E = " txtPassword=ZqrE01A2d "



-- Veröffentlicht durch nubbi am 18:20 am 25. Feb. 2004

jo, bin auch grad dabei nach ner seite zu suchen, wo der link mal funzt, damit ich den decompiler runterladen kann :lol:

edit: da fällt mir ein: mit dem debugger kann das ja gar net richtig funzen, VB3-Programme werden ja interpretiert und sind keine eigenen programme :ohno:

(Geändert von nubbi um 18:24 am Feb. 25, 2004)

komm ma bei icq online ^^

(Geändert von nubbi um 18:29 am Feb. 25, 2004)

habs raus :lol:

(Geändert von nubbi um 18:33 am Feb. 25, 2004)


-- Veröffentlicht durch MilleniumEli1 am 18:18 am 25. Feb. 2004

also das ist in der tat komisch :P

ich krieg ja schon bei nem asm code der länger als 5 zeilen ist zu viel. ich bin mir ja nicht sicher ob du damit was finden wirst ;) viel glück :thumb:

ich hab das ganze einfach dekompiliert und mir den source angeguckt. dann nen bisschen gesucht, und schwups wars fertig ;)


-- Veröffentlicht durch nubbi am 18:01 am 25. Feb. 2004

ne, ich meine nen richtigen kernel-mode-debugger (softice) und ich kann kein java aber assembler :biglol: is zwar komisch, aber stimmt :lol: lade aber grade nen debugger für vb-anwendungen runter ;)

(Geändert von nubbi um 18:01 am Feb. 25, 2004)

ich komm damit irgendwie nich klar, dass das ne 16-bit anwendung ist :lol: die waren vor meiner zeit aktuell :lol:

ps: klär mich nachher auf, wenn ich es mir zu kompliziert gemacht hab :lol::thumb:

(Geändert von nubbi um 18:11 am Feb. 25, 2004)


-- Veröffentlicht durch MilleniumEli1 am 17:59 am 25. Feb. 2004

wie, du kannst kein java aber kannst assembler? oder gibts auch andere debugger? oder meinst du decompiler? :)


-- Veröffentlicht durch nubbi am 17:37 am 25. Feb. 2004

gewusst wie ;) hab leider 0 ahnung von java ;)
so, werde jetzt für level5 erstmal den debugger anwerfen ;)

nubbi


-- Veröffentlicht durch MilleniumEli1 am 17:25 am 25. Feb. 2004

okay, ich helf noch nen bisschen ;)

/* 166*/        infile = new String("level4");
/* 167*/        try
              {
/* 167*/            inURL = new URL(getCodeBase(), infile);
              }

aus der datei hinter dem string "inURL" werden später die daten, also passwort, login, und addresse ausgelesen.

der befehl gibt die position relativ zu dem parameter "infile" zurück. oder so ähnlich jedenfalls ;) siehe zeile 166...

level 5 war eigentlich recht einfach, aber level6 pack ich irgendwie noch net :)


-- Veröffentlicht durch nubbi am 17:11 am 25. Feb. 2004

keine chance :blubb:


-- Veröffentlicht durch MilleniumEli1 am 16:24 am 25. Feb. 2004

juchuu, endlich hab ichs geschafft ;) danke erstmal für den code.
also ich hab mir auch erstmal gedanken über diese seltsame for schleife gemacht (kann nen bissi c++ ;)) aber das ist letztendlich unwichtig!

aber der schlüssel steckt in der init. da bekommt der nämlich letztendlich seine daten her! schau mal ziemlich nach unten, vielleicht findestes ja auch noch


-- Veröffentlicht durch nubbi am 16:05 am 25. Feb. 2004

hab mir jeztt nen decompiler für Java-applets gesaugt... das kommt raus:

Code
// Decompiled by DJ v3.5.5.77 Copyright 2003 Atanas Neshkov  Date: 25.02.2004 16:05:12
// Home Page : http://members.fortunecity.com/neshkov/dj.html  - Check often for new version!
// Decompiler options: packimports(3) lnc
// Source File Name:   PasswdLevel4.java

import java.applet.Applet;
import java.applet.AppletContext;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.EventObject;

public class PasswdLevel4 extends Applet
   implements ActionListener
{

           public PasswdLevel4()
           {
/*  17*/        inuser = new String[22];
/*  18*/        totno = 0;
/*  19*/        countConn = null;
/*  20*/        countData = null;
/*  21*/        inURL = null;
/*  22*/        txtlogin = new TextField();
/*  23*/        label1 = new Label();
/*  24*/        label2 = new Label();
/*  25*/        label3 = new Label();
/*  26*/        txtpass = new TextField();
/*  27*/        lblstatus = new Label();
/*  28*/        ButOk = new Button();
/*  29*/        ButReset = new Button();
/*  30*/        lbltitle = new Label();
           }

           void ButOk_ActionPerformed(ActionEvent actionevent)
           {
/*  35*/        boolean flag = false;
/*  36*/        for(int i = 1; i <= totno / 2; i++)
/*  37*/            if(txtlogin.getText().trim().toUpperCase().intern() == inuser[2 * (i - 1) + 2].trim().toUpperCase().intern() && txtpass.getText().trim().toUpperCase().intern() == inuser[2 * (i - 1) + 3].trim().toUpperCase().intern())
                   {
/*  39*/                lblstatus.setText("Login Success, Loading..");
/*  40*/                flag = true;
/*  41*/                String s = inuser[1].trim().intern();
/*  42*/                String s1 = getParameter("targetframe");
/*  43*/                if(s1 == null)
/*  44*/                    s1 = "_self";
/*  45*/                try
                       {
/*  45*/                    finalurl = new URL(getCodeBase(), s);
                       }
/*  49*/                catch(MalformedURLException _ex)
                       {
/*  51*/                    lblstatus.setText("Bad URL");
                       }
/*  53*/                getAppletContext().showDocument(finalurl, s1);
                   }

/*  56*/        if(!flag)
/*  57*/            lblstatus.setText("Invaild Login or Password");
           }

           void ButReset_ActionPerformed(ActionEvent actionevent)
           {
/*  62*/        txtlogin.setText("");
/*  63*/        txtpass.setText("");
           }

           public void actionPerformed(ActionEvent actionevent)
           {
/*  68*/        Object obj = actionevent.getSource();
/*  69*/        if(obj == ButOk)
               {
/*  70*/            ButOk_ActionPerformed(actionevent);
/*  69*/            return;
               }
/*  72*/        if(obj == ButReset)
/*  73*/            ButReset_ActionPerformed(actionevent);
           }

           public void destroy()
           {
/*  78*/        ButOk.setEnabled(false);
/*  79*/        ButReset.setEnabled(false);
/*  80*/        txtlogin.setVisible(false);
/*  81*/        txtpass.setVisible(false);
           }

           public void inFile()
           {
/*  86*/        new StringBuffer();
/*  89*/        try
               {
/*  89*/            countConn = inURL.openStream();
/*  92*/            countData = new BufferedReader(new InputStreamReader(countConn));
                   String s;
/*  95*/            while((s = countData.readLine()) != null)
/*  95*/                if(totno < 21)
                       {
/*  97*/                    totno = totno + 1;
/*  98*/                    inuser[totno] = s;
/*  99*/                    s = "";
                       } else
                       {
/* 104*/                    lblstatus.setText("Cannot Exceed 10 users, Applet fail start!");
/* 105*/                    destroy();
                       }
               }
/* 109*/        catch(IOException ioexception)
               {
/* 111*/            getAppletContext().showStatus("IO Error:" + ioexception.getMessage());
               }
/* 113*/        try
               {
/* 113*/            countConn.close();
/* 116*/            countData.close();
/* 113*/            return;
               }
/* 118*/        catch(IOException ioexception1)
               {
/* 120*/            getAppletContext().showStatus("IO Error:" + ioexception1.getMessage());
               }
           }

           public void init()
           {
/* 126*/        setLayout(null);
/* 127*/        setSize(361, 191);
/* 128*/        add(txtlogin);
/* 129*/        txtlogin.setBounds(156, 72, 132, 24);
/* 130*/        label1.setText("Please Enter Login Name & Password");
/* 131*/        label1.setAlignment(1);
/* 132*/        add(label1);
/* 133*/        label1.setFont(new Font("Dialog", 1, 12));
/* 134*/        label1.setBounds(41, 36, 280, 24);
/* 135*/        label2.setText("Login");
/* 136*/        add(label2);
/* 137*/        label2.setFont(new Font("Dialog", 1, 12));
/* 138*/        label2.setBounds(75, 72, 36, 24);
/* 139*/        label3.setText("Password");
/* 140*/        add(label3);
/* 141*/        add(txtpass);
/* 142*/        txtpass.setEchoChar('*');
/* 143*/        txtpass.setBounds(156, 108, 132, 24);
/* 144*/        lblstatus.setAlignment(1);
/* 145*/        label3.setFont(new Font("Dialog", 1, 12));
/* 146*/        label3.setBounds(75, 108, 57, 21);
/* 147*/        add(lblstatus);
/* 148*/        lblstatus.setFont(new Font("Dialog", 1, 12));
/* 149*/        lblstatus.setBounds(14, 132, 344, 24);
/* 150*/        ButOk.setLabel("OK");
/* 151*/        add(ButOk);
/* 152*/        ButOk.setFont(new Font("Dialog", 1, 12));
/* 153*/        ButOk.setBounds(105, 156, 59, 23);
/* 154*/        ButReset.setLabel("Reset");
/* 155*/        add(ButReset);
/* 156*/        ButReset.setFont(new Font("Dialog", 1, 12));
/* 157*/        ButReset.setBounds(204, 156, 59, 23);
/* 158*/        lbltitle.setAlignment(1);
/* 159*/        add(lbltitle);
/* 160*/        lbltitle.setFont(new Font("Dialog", 1, 12));
/* 161*/        lbltitle.setBounds(12, 14, 336, 24);
/* 162*/        String s = getParameter("title");
/* 163*/        lbltitle.setText(s);
/* 164*/        ButOk.addActionListener(this);
/* 165*/        ButReset.addActionListener(this);
/* 166*/        infile = new String("level4");
/* 167*/        try
               {
/* 167*/            inURL = new URL(getCodeBase(), infile);
               }
/* 171*/        catch(MalformedURLException _ex)
               {
/* 173*/            getAppletContext().showStatus("Bad Counter URL:" + inURL);
               }
/* 175*/        inFile();
           }

           private URL finalurl;
           String infile;
           String inuser[];
           int totno;
           InputStream countConn;
           BufferedReader countData;
           URL inURL;
           TextField txtlogin;
           Label label1;
           Label label2;
           Label label3;
           TextField txtpass;
           Label lblstatus;
           Button ButOk;
           Button ButReset;
           Label lbltitle;
}


kann leider kein java ^^ kann nur erkennen, dass das passwort aus dem angegebenen benutzernamen berechnet wird... [glaube ich zumindest:lol:] aber in welcher weise kann ich nicht sagen 8[

nubbi


-- Veröffentlicht durch MilleniumEli1 am 15:53 am 25. Feb. 2004

boah bin ich blöd :) naja, hab halt nie html gemacht ;)

level 4 ist irgendwie kacke. hasst dus geschafft nubbi?


-- Veröffentlicht durch nubbi am 23:35 am 24. Feb. 2004


Zitat von Falcon am 23:34 am Feb. 24, 2004
wie umgeh ich denn so einen Schutz wie in level 1 ?

Ich kenn da nämlich jemanden der hat ne Internet Seite wo so ein Passwort erfragt wird ....;)



den quelltext anzeigen :ugly:

edit: @level4... aber ich kann kein java :ugly:

(Geändert von nubbi um 23:40 am Feb. 24, 2004)


-- Veröffentlicht durch Falcon am 23:34 am 24. Feb. 2004

wie umgeh ich denn so einen Schutz wie in level 1 ?

Ich kenn da nämlich jemanden der hat ne Internet Seite wo so ein Passwort erfragt wird ....;)


-- Veröffentlicht durch nubbi am 23:30 am 24. Feb. 2004

Code
<script src="JavaScript"></script>


da wird ein javascript aus der datei "JavaScript" geladen

(Geändert von nubbi um 23:30 am Feb. 24, 2004)

edit: verdammt, für level 4 brauch ich erst die Java VM

(Geändert von nubbi um 23:32 am Feb. 24, 2004)


-- Veröffentlicht durch MilleniumEli1 am 23:21 am 24. Feb. 2004

lustige seite :)
komm leider bei level3 schon nicht mehr weiter :blubb:`kann mir jemand nen tipp geben für lvl 3?


-- Veröffentlicht durch nubbi am 21:05 am 24. Feb. 2004


Zitat von MisterFQ am 9:29 am Feb. 23, 2004

es gab doch mal so ein spiel hier wo man sich mit passwortabfragen rumschlagen musste, und es darum ging diese zu umgehen, jedes level wurde das schwerer. vielleicht kennt hier noch jemand den link oder benutz mal die suche da gabs hier nen topic für.


http://www.try2hack.nl

nubbi


-- Veröffentlicht durch darkcrawler am 15:24 am 24. Feb. 2004


Zitat von Deep Shadow am 13:11 am Feb. 23, 2004
Deshalb sagte ich auch er solle auf den Link oben gehen, denn da wird erklärt wies mit htaccess geht, immer noch die Sicherste möglichkeit (ich sagte sicherste, ned sicher ;) )


MfG
D$.



jo und htaccess ist eigentlich auch einfach zu realisieren


-- Veröffentlicht durch Daddes am 12:33 am 24. Feb. 2004


Oder man kann einfach die Zielseite nach dem Passwort benennen und einfach drauf weiterleiten


-- Veröffentlicht durch Deep Shadow am 13:11 am 23. Feb. 2004

Deshalb sagte ich auch er solle auf den Link oben gehen, denn da wird erklärt wies mit htaccess geht, immer noch die Sicherste möglichkeit (ich sagte sicherste, ned sicher ;) )


MfG
D$.


-- Veröffentlicht durch david am 12:46 am 23. Feb. 2004

Jo geht mit Java aber das knackt sowieso fast jeder Anfänger. ;)

David


-- Veröffentlicht durch Blackout am 12:38 am 23. Feb. 2004

naja java ist sehr leicht zu knacken würde da eher zu php tendieren.



-- Veröffentlicht durch MisterFQ am 9:29 am 23. Feb. 2004

mit html kann man keine passwortabfrage bauen.

die einfachste möglichkeit ist zb java. damit kommt zb. ein popup in das man das passwort eingeben muss sonst wird man zu einer andern seite umgeleitet. das problem hierbei ist das für jeden der nur 5 cent ahnung davon hat es kein problem sein sollte das zu umgehen.

es gab doch mal so ein spiel hier wo man sich mit passwortabfragen rumschlagen musste, und es darum ging diese zu umgehen, jedes level wurde das schwerer. vielleicht kennt hier noch jemand den link oder benutz mal die suche da gabs hier nen topic für.

für die schweren java abfragen hab ich damal sauch schon ne halbe stunde oder so gebraucht, also für normal anwender sind die schon recht hinderlich.


-- Veröffentlicht durch Deep Shadow am 22:57 am 22. Feb. 2004

Hi,

ich könnt jetzt lang schwallen oder dir raten hier nachzuschaun ;)

HTH
D$.


-- Veröffentlicht durch JHMaster am 19:06 am 22. Feb. 2004

Wie erstelle ich eine Passwortabfrage mit HTML??
Brauch ich für nen geschlossenen Bereich inner Homepage.


OCinside.de PC Forum
© 2001 - 2024 www.ocinside.de