1. #1
    Avatar von Mentos
    Registriert seit
    18.11.2011
    Beiträge
    451
    Thanked 498 Times in 240 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.