Análisis del código del complemento de enlace de mensaje de tarjeta de mensaje privado Douyin

 Después de descompilar la aplicación Douyin a través de ida, descomprima el archivo ipa descargado con el software de descompresión (como 7zip, etc.), busque el archivo ejecutable Aweme del directorio descomprimido Payload / Aweme.app /, y arrástrelo a ida para descompilar , Ida puede detectar la sintaxis del objetivo-c.
Luego ingrese el tema, ya que es un chat para enviar un mensaje, intente buscar "mensaje" en ida para ver si puede encontrar la clase o función correspondiente.
Encontré el messageBaseViewController aquí y encontré una función llamada didSendContent: que puede inferir aproximadamente que debería ser la entrada para enviar un mensaje basado en el nombre. Esta función llama a checkAndSendMessage, que
debería ser la operación de verificación antes del envío, como la longitud del mensaje Bloqueo de devolución de llamada, obtener

 

 

Puede ver que el mensaje im es el protocolo protobuf de Google (puede encontrar información relacionada si no está familiarizado, es un protocolo de serialización). La
estructura del mensaje protobuf que envía el mensaje es aproximadamente como se muestra en la siguiente figura. El contenido del mensaje, el tipo y otros parámetros se establecen en TIMPBNSendMessageRequestBody. Entonces, todo lo que tenemos que hacer es averiguar cómo se ven las estructuras anteriores. Aquí podemos verificarlo al generar de manera inversa el archivo de encabezado del código de vibrato.
Use la herramienta de volcado de clase (encuentre el método por sí mismo) para volcar el archivo de encabezado del archivo ejecutable en el paso 1.
Publicado aquí, la construcción del cuerpo del mensaje protobuf solo necesita vincular los campos en el archivo de encabezado.

Supongo que te gusta

Origin www.cnblogs.com/douyin618/p/12690989.html
Recomendado
Clasificación