가을 항공 알고리즘을 역

@ TOC

가을 항공 알고리즘을 역

그하여 패킷 캡처는 페이지 요청 응용 프로그램 가을, 첫째 / ECMember /의 비밀 / getSecret가 요청을 보낼 때마다, 핵심은 요청 및 응답이 암호문을 base64로 인코딩하고, 가능성이 인수해야한다.

패킷 캡쳐 분석

그림 삽입 설명 여기 그림 삽입 설명 여기

디 컴파일

여기에 우리가 젭으로 열고 그림 삽입 설명 여기, 그림에서 본 쉘을 추가, 당신은 패키지 이름에서 볼 수있는 플레이 플레이 쉘, 우리는 IDA 호출을 사용 케이스에 대한 메모리에서 떨어져 덱스 방법을 덤프하고, jadx 및 수출 연 소스 코드, 아이디어를 엽니 다

그림 삽입 설명 여기

데이터 처리 로직 및 응답 패킷을 찾고

직접 아이디어에서 열기 검색하고 "데이터"를 입력 그림 삽입 설명 여기우리가 방법을 HttpRequestUtils를 선택하고 들어가이 같은 참조

public static String a(ReselectSeatArg reselectSeatArg) throws RemoteAccessException {
        ...
        try {
            String[] a = DESCrypter.a();
            Map hashMap2 = new HashMap();
            hashMap2.put("data", DESCrypter.c(JsonConvert.a(hashMap), a[0]));
            String a2 = new HttpRequesterProxy(UrlConstant.Y, hashMap2, 30).a();
            if (a2.trim().length() != 0) {
                return a2;
            }
            throw new RemoteAccessException(BasicUtils.a((int) R.string.ERR001));
        } catch (Exception e) {
            throw new RemoteAccessException(BasicUtils.a((int) R.string.ERR001));
        }
    }

DES 알고리즘인가,) (DESCrypter.a를 입력

public static String[] a() throws Exception {
        return a.getSecrets(new HttpRequesterProxy(UrlConstant.N, 30).a());
    }

여기에 우리가 이전처럼 잡힌 분석을 얻을 수 있고,이 열쇠를 가지고하는 것입니다. 방법 DescrypterUtil getSecrets 재진입

public java.lang.String[] getSecrets(java.lang.String r1) {
 ....
    }

감소 알고리즘

public static String recvData(String str) throws IOException {
...
}

public static String decode(String arg10) throws Exception {
...
byte[] decode = Base64.decodeBase64(arg10);
return new String(v0.doFinal(decode), "utf-8");
}

public static String encode(String arg9) throws Exception {
        SecretKey v1 = SecretKeyFactory.getInstance("desede")
                .generateSecret(new DESedeKeySpec("**************)".getBytes()));
        Cipher v0 = Cipher.getInstance("***/***/****");
        v0.init(1, ((Key) v1), new IvParameterSpec("***".getBytes()));
        return Base64.encodeBase64String(v0.doFinal(arg9.getBytes("utf-8")));
    }

알고리즘의 정확성을 확인

그림 삽입 설명 여기 캡처 데이터 수집 요청 매개 변수 및 해독 된 응답 패킷은 완전히 성공 해독 Minga했다 읽을 수있는 문자열을 JSON 복원됩니다.

912 146 030 및 진행 상황을 공유 그룹을 입력 할 수 있습니다, 역 앤드류스에 관심이있는 친구가합니다.

추천

출처www.cnblogs.com/lily19941214/p/11877244.html