dkill: (Oooo!)
[personal profile] dkill
... вас не заманишь кодом не чистым!!!
Но я таки попытаюсь. ;)

Ув. тов. Программеры!

Мне тут попался преинтереснейший жабовый троян (кейлогер+бот+еще куча гадости), неизвестного турецкого художника.
Пытаюсь найти его коммандный центр. Декомпильнул ихние классы, интересно работает ;)
Есть там такой класс:

public class Decyrptor
{

    public Decyrptor()
    {
    }

    private static int Cevap(String s)
    {
        int i = 0;
        int j = 1;
        boolean flag = false;
        for(int l = s.length(); l > 0; l--)
        {
            char c = s.charAt(l - 1);
            int k = Integer.parseInt("" + c) * j;
            j *= 2;
            i += k;
        }

        return i;
    }

    public static String Decyrpt(String s)
    {
        String s1 = "";
        String s3 = "";
        String s4 = "";
        String s6 = "";
        boolean flag = true;
        boolean flag1 = false;
        boolean flag2 = false;
        boolean flag3 = false;
        s6 = "";
        String s7 = "";
        for(int l = 0; l < s.length(); l++)
        {
            int i = 1;
            boolean flag4 = false;
            String s8 = "";
            byte byte0;
            do
            {
                char c1 = s.charAt(l);
                byte byte1 = (byte)c1;
                byte0 = byte1;
                Character character = new Character(c1);
                if(byte0 != 32)
                {
                    s8 = s8 + character.toString();
                    l++;
                }
            } while((byte0 != 32) & (l != s.length()));
            byte0 = 0;
            int k1 = Integer.parseInt(s8);
            for(int l1 = 0; l1 < 77; l1++)
                i = (i * k1) % 221;

            if(l == s.length() - 1)
            {
                flag4 = true;
                int k = s3.length() % 8;
            }
            String s2 = "";
            for(int i2 = 6; i2 > 0; i2--)
            {
                int j = i % 2;
                Integer integer = new Integer(j);
                s2 = s2 + integer.toString();
                i /= 2;
            }

            StringBuffer stringbuffer = new StringBuffer(s2);
            s2 = stringbuffer.reverse().toString();
            if(flag4)
                s2 = s2.substring(0, 8 - s3.length() % 8);
            s3 = s3 + s2;
            s8 = "";
        }

        for(int i1 = 0; i1 < s3.length() / 8; i1++)
        {
            String s5 = s3.substring(i1 * 8, i1 * 8 + 8);
            int j1 = Cevap(s5);
            char c = (char)j1;
            s6 = s6 + c;
        }

        return s6;
    }
}
------------

Кто нибудь может дать внятный алгоритм этой поеботины? 
Или хотя бы скажите, как это запустить, чтобы оно хавало криптованый стринг и выдавала клир текст?
Пример криптованого стринга:  "207 15 0 37 207 32 218 29 163 120 215"

(я конечно понимаю, что могу и сам допереть, но накуренные мозги уж очень туго соображают ;)))

UPD: да уж... пока от вас дождешься... уже не надо ;)
Гугл твой френд навеки-веков ;)))

А в замен, я вам потом расскажу не расскажу чем это все закончилось ;)))


ПС: там по ди.фм (di.fm/trance.pls) идет 350 эпизод АСОТа, аж 7 часов!!!!
Page generated 2025-08-13 21:21
Powered by Dreamwidth Studios