Pull to refresh

Comments 5

Никакой обфускации и шифрования.

Не думаю, что это важно ввиду того, что на большинстве смартов нет ничего, что могло бы противодействовать этому ПО. Если злоумышленник узнает данные для доступа к ЛК каких-нибудь платежных систем, и, имея доступ к смс подтверждениям на смартфоне, он сможет управлять счетами итд. А IP адреса, на которые устанавливаются соединения можно и сетевыми анализаторами глянуть, хотя трафик все же лучше шифровать чем-нибудь асимметричным.
if (str1.equals(«13») == true)

Бот написан более грамотно
Гм…
Мне кажется, тут код уровня «Learn Java in 21 day» в лучшем случае.
Тем более, что вроде как ничего сложного код и не делает.

P.S. Почему вы тег <source> не используете?
Это не оригинальный код.

> Декомпилируем приложение в читаемый исходный или байт-код;

Само собой, не оригинальный.
Но == true там могло появиться только в случае, если его туда зачем-то вкорячил автор зловреда, а декомпилятор не выкинул.
Древний JAD бесполезные сравнения выкидывает, а JD — оставляет.

Что бы не быть голословным
Исходный код:

public class Test {

	public static void senor() {
		if ("FOO".equals("BAR")) {
			System.out.println("Señor");
		}
	}

	public static void junior() {
		if ("FOO".equals("BAR") == true) {
			System.out.println("Junior");
		}	
	}

}


X:\>javac -version
javac 1.7.0_45

Байт-код:

  public static void senor();
    Code:
       0: ldc           #2                  // String FOO
       2: ldc           #3                  // String BAR
       4: invokevirtual #4                  // Method java/lang/String.equals:(Ljava/lang/Object;)Z
       7: ifeq          18
      10: getstatic     #5                  // Field java/lang/System.out:Ljava/io/PrintStream;
      13: ldc           #6                  // String Señor
      15: invokevirtual #7                  // Method java/io/PrintStream.println:(Ljava/lang/String;)V
      18: return        

  public static void junior();
    Code:
       0: ldc           #2                  // String FOO
       2: ldc           #3                  // String BAR
       4: invokevirtual #4                  // Method java/lang/String.equals:(Ljava/lang/Object;)Z
       7: iconst_1      
       8: if_icmpne     19
      11: getstatic     #5                  // Field java/lang/System.out:Ljava/io/PrintStream;
      14: ldc           #8                  // String Junior
      16: invokevirtual #7                  // Method java/io/PrintStream.println:(Ljava/lang/String;)V
      19: return        




Как видите, избыточное сравнение никуда из тела метода junior() не делось.

Sign up to leave a comment.