1. #1
    U-Labs Routinier
    Avatar von Mentos
    Registriert seit
    18.11.2011
    Beiträge
    451
    Thanked 497 Times in 239 Posts

    Standard [KnuddelsApp] Informationspool

    Hey,

    hier bitte ausschließlich Informationen zu der App posten, sprich zum Aufbau/Obfuscation etc.pp.

    Obfuscation
    Die App wurde scheinbar mit einem ähnlichen Tool (oder dem selben) obfuscated, wie das eigentliche Chatapplet aus. Die Leserlichkeit ist dadurch leider nicht gegeben. Interessant wären BETA-Test-Apps, da diese vielleicht noch keine Obfuscation hatten.

    String-Encryption
    Wie das originale Applet auch, wurden Strings verschlüsselt, um die Leserlichkeit zu erschweren. Hierbei wurde allerdings nicht auf eine seperate Encryption-Datei (wie beispielsweise die za.class) zurückgegriffen, sondern auf eine erweiterte XOR-Verschlüsselung.
    Auch wenn die APP scheinbar zwei unterschiedliche Methoden aufruft (n.concat und h.copyValueOf), sind diese von der Verschlüsselung her gleich:

    PHP-Code:
    public static String decrypt(String paramStringint paramInt) {
            
    int i 0;
            try {
                
    char[] arrayOfChar paramString.toCharArray();
                
    int j arrayOfChar.length;
                while (
    != j) {
                    
    int k arrayOfChar[i] ^ paramInt 0x5F;
                    
    paramInt++;
                    
    int m 1;
                    
    arrayOfChar[i] = ((chark);
                    
    m;
                }
                
    String str String.valueOf(arrayOfChar0j).intern();
                return 
    str;
            } catch (
    Exception x) {
                return 
    null;
            }
        } 
    Relevante Klassen

    Einstiegsklasse
    Die b Klasse ist die Einstiegsklasse. Dies lässt sich daran erkennen, dass diese von Application erbt

    KnuddelsCache
    Klasse (ni), die Bildinformationen etc. speichert und cached!

    SQLite-Helper
    Die v9-Klasse ist der SQLiteOpenHelper (extends SQLiteOpenHelper)

    Notifikations-Manager
    Die Klasse "ah" regelt alles bzgl. der Notifikationen:
    PHP-Code:
    public static final String c "pushConfig";
     public static final 
    String k "NotificationState"
    Loginpanel
    Die j Klasse ist das Loginpanel, erkennbar an folgender Zeile:
    PHP-Code:
    super.d(paramBundle21309030442131230737"knuddels_Android_login_ma-top-5"); 
    KnuddelsConnection
    Eine der wohl interessantesten Klassen ist die sogenannte "KnuddelsConnection" (so wird sie von Knuddels genannt), die sich derzeit unter dem Namen x2 versteckt.

    private final void d() => Initialisierer (u.a. Socket etc.)
    private final boolean e() => isConnected()-Methode. Gibt an, ob die APP zum Knuddelsserver verbunden ist.
    private final void i(final ig paramig, final boolean paramBoolean) => (Login?)
    private final void y(byte[] paramArrayOfByte) => Sendet ein Byte-Array an den Knuddelsserver
    private final void z() => Schließt die Verbindung/Reset

    Knuddelscode-Parser
    yv ist für den Knuddelscode verantwortlich ("#","°>",...)

    Datenbank-Handler
    a8 ist für die Datenbank verantwortlich:
    PHP-Code:
    @DatabaseTable(tableName="thread")
    @
    DatabaseField(columnName="message"
    Offenbar werden hier die jeweiligen Nachrichten gespeichert!


    Zusätzliche Infos
    Die App scheint eine Cryptographie-Klasse/Methode zu verwenden, worauf das
    PHP-Code:
          this.b.log(Level.INFO"Init Crypto");
          
    u(this.vlocalpq, new byte[] { });
          
    this.b.log(Level.INFO"CheckProtocol"); 
    in der KnuddelsConnection hindeutet.

    Vermutungen
    BigInteger localBigInteger = ur.b(System.currentTimeMillis() ^ new Random().nextLong());
    wird an den Server gesendet. Hat dieses etwas mit der Encryption zu tun?

    Der BigInteger scheint das "normale" ByteArray zu sein - sprich in diesem scheinen die Daten gespeichert zu werden, die später gesendet werden sollen.
    Geändert von Mentos (06.02.2013 um 17:03 Uhr)
    „Es sind nicht unsere Fähigkeiten, die zeigen, wer wir wirklich sind, es sind unsere Entscheidungen.“
    - Albus Dumbledore, Harry Potter 2


    /guestchat registerGuest

Ähnliche Themen

  1. !! KnuddelsApp Speichert Passwörter unverschlüelt !!
    Von Chrissy im Forum Knuddels Allgemein
    Antworten: 5
    Letzter Beitrag: 30.08.2013, 15:23
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191