Primer paso de la investigacion. Se aportan el .apk, las carpetas con el apk extraido y el apk descompilado. El archivo API_DOCUMENTATION.md es un archivo donde se anotaran los descubrimientos del funcionamiento de la API, y los .py son scripts para probar la funcionalidad de la API con los métodos que vayamos encontrando. Finalmente, los archivos .js son scripts de Frida para extraer informacion de la APP durante la ejecucion.
This commit is contained in:
@@ -0,0 +1,279 @@
|
||||
package com.google.firebase.messaging.reporting;
|
||||
|
||||
import com.google.firebase.encoders.proto.ProtoEnum;
|
||||
import com.google.firebase.encoders.proto.Protobuf;
|
||||
|
||||
/* loaded from: classes3.dex */
|
||||
public final class MessagingClientEvent {
|
||||
private static final MessagingClientEvent DEFAULT_INSTANCE = new Builder().build();
|
||||
private final String analytics_label_;
|
||||
private final long bulk_id_;
|
||||
private final long campaign_id_;
|
||||
private final String collapse_key_;
|
||||
private final String composer_label_;
|
||||
private final Event event_;
|
||||
private final String instance_id_;
|
||||
private final String message_id_;
|
||||
private final MessageType message_type_;
|
||||
private final String package_name_;
|
||||
private final int priority_;
|
||||
private final long project_number_;
|
||||
private final SDKPlatform sdk_platform_;
|
||||
private final String topic_;
|
||||
private final int ttl_;
|
||||
|
||||
/* loaded from: classes3.dex */
|
||||
public static final class Builder {
|
||||
private long project_number_ = 0;
|
||||
private String message_id_ = "";
|
||||
private String instance_id_ = "";
|
||||
private MessageType message_type_ = MessageType.UNKNOWN;
|
||||
private SDKPlatform sdk_platform_ = SDKPlatform.UNKNOWN_OS;
|
||||
private String package_name_ = "";
|
||||
private String collapse_key_ = "";
|
||||
private int priority_ = 0;
|
||||
private int ttl_ = 0;
|
||||
private String topic_ = "";
|
||||
private long bulk_id_ = 0;
|
||||
private Event event_ = Event.UNKNOWN_EVENT;
|
||||
private String analytics_label_ = "";
|
||||
private long campaign_id_ = 0;
|
||||
private String composer_label_ = "";
|
||||
|
||||
public MessagingClientEvent build() {
|
||||
return new MessagingClientEvent(this.project_number_, this.message_id_, this.instance_id_, this.message_type_, this.sdk_platform_, this.package_name_, this.collapse_key_, this.priority_, this.ttl_, this.topic_, this.bulk_id_, this.event_, this.analytics_label_, this.campaign_id_, this.composer_label_);
|
||||
}
|
||||
|
||||
public Builder setAnalyticsLabel(String str) {
|
||||
this.analytics_label_ = str;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setBulkId(long j4) {
|
||||
this.bulk_id_ = j4;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setCampaignId(long j4) {
|
||||
this.campaign_id_ = j4;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setCollapseKey(String str) {
|
||||
this.collapse_key_ = str;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setComposerLabel(String str) {
|
||||
this.composer_label_ = str;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setEvent(Event event) {
|
||||
this.event_ = event;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setInstanceId(String str) {
|
||||
this.instance_id_ = str;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setMessageId(String str) {
|
||||
this.message_id_ = str;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setMessageType(MessageType messageType) {
|
||||
this.message_type_ = messageType;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setPackageName(String str) {
|
||||
this.package_name_ = str;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setPriority(int i) {
|
||||
this.priority_ = i;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setProjectNumber(long j4) {
|
||||
this.project_number_ = j4;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setSdkPlatform(SDKPlatform sDKPlatform) {
|
||||
this.sdk_platform_ = sDKPlatform;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setTopic(String str) {
|
||||
this.topic_ = str;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setTtl(int i) {
|
||||
this.ttl_ = i;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
/* loaded from: classes3.dex */
|
||||
public enum Event implements ProtoEnum {
|
||||
UNKNOWN_EVENT(0),
|
||||
MESSAGE_DELIVERED(1),
|
||||
MESSAGE_OPEN(2);
|
||||
|
||||
private final int number_;
|
||||
|
||||
Event(int i) {
|
||||
this.number_ = i;
|
||||
}
|
||||
|
||||
@Override // com.google.firebase.encoders.proto.ProtoEnum
|
||||
public int getNumber() {
|
||||
return this.number_;
|
||||
}
|
||||
}
|
||||
|
||||
/* loaded from: classes3.dex */
|
||||
public enum MessageType implements ProtoEnum {
|
||||
UNKNOWN(0),
|
||||
DATA_MESSAGE(1),
|
||||
TOPIC(2),
|
||||
DISPLAY_NOTIFICATION(3);
|
||||
|
||||
private final int number_;
|
||||
|
||||
MessageType(int i) {
|
||||
this.number_ = i;
|
||||
}
|
||||
|
||||
@Override // com.google.firebase.encoders.proto.ProtoEnum
|
||||
public int getNumber() {
|
||||
return this.number_;
|
||||
}
|
||||
}
|
||||
|
||||
/* loaded from: classes3.dex */
|
||||
public enum SDKPlatform implements ProtoEnum {
|
||||
UNKNOWN_OS(0),
|
||||
ANDROID(1),
|
||||
IOS(2),
|
||||
WEB(3);
|
||||
|
||||
private final int number_;
|
||||
|
||||
SDKPlatform(int i) {
|
||||
this.number_ = i;
|
||||
}
|
||||
|
||||
@Override // com.google.firebase.encoders.proto.ProtoEnum
|
||||
public int getNumber() {
|
||||
return this.number_;
|
||||
}
|
||||
}
|
||||
|
||||
public MessagingClientEvent(long j4, String str, String str2, MessageType messageType, SDKPlatform sDKPlatform, String str3, String str4, int i, int i4, String str5, long j5, Event event, String str6, long j6, String str7) {
|
||||
this.project_number_ = j4;
|
||||
this.message_id_ = str;
|
||||
this.instance_id_ = str2;
|
||||
this.message_type_ = messageType;
|
||||
this.sdk_platform_ = sDKPlatform;
|
||||
this.package_name_ = str3;
|
||||
this.collapse_key_ = str4;
|
||||
this.priority_ = i;
|
||||
this.ttl_ = i4;
|
||||
this.topic_ = str5;
|
||||
this.bulk_id_ = j5;
|
||||
this.event_ = event;
|
||||
this.analytics_label_ = str6;
|
||||
this.campaign_id_ = j6;
|
||||
this.composer_label_ = str7;
|
||||
}
|
||||
|
||||
public static MessagingClientEvent getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
public static Builder newBuilder() {
|
||||
return new Builder();
|
||||
}
|
||||
|
||||
@Protobuf(tag = 13)
|
||||
public String getAnalyticsLabel() {
|
||||
return this.analytics_label_;
|
||||
}
|
||||
|
||||
@Protobuf(tag = 11)
|
||||
public long getBulkId() {
|
||||
return this.bulk_id_;
|
||||
}
|
||||
|
||||
@Protobuf(tag = 14)
|
||||
public long getCampaignId() {
|
||||
return this.campaign_id_;
|
||||
}
|
||||
|
||||
@Protobuf(tag = 7)
|
||||
public String getCollapseKey() {
|
||||
return this.collapse_key_;
|
||||
}
|
||||
|
||||
@Protobuf(tag = 15)
|
||||
public String getComposerLabel() {
|
||||
return this.composer_label_;
|
||||
}
|
||||
|
||||
@Protobuf(tag = 12)
|
||||
public Event getEvent() {
|
||||
return this.event_;
|
||||
}
|
||||
|
||||
@Protobuf(tag = 3)
|
||||
public String getInstanceId() {
|
||||
return this.instance_id_;
|
||||
}
|
||||
|
||||
@Protobuf(tag = 2)
|
||||
public String getMessageId() {
|
||||
return this.message_id_;
|
||||
}
|
||||
|
||||
@Protobuf(tag = 4)
|
||||
public MessageType getMessageType() {
|
||||
return this.message_type_;
|
||||
}
|
||||
|
||||
@Protobuf(tag = 6)
|
||||
public String getPackageName() {
|
||||
return this.package_name_;
|
||||
}
|
||||
|
||||
@Protobuf(tag = 8)
|
||||
public int getPriority() {
|
||||
return this.priority_;
|
||||
}
|
||||
|
||||
@Protobuf(tag = 1)
|
||||
public long getProjectNumber() {
|
||||
return this.project_number_;
|
||||
}
|
||||
|
||||
@Protobuf(tag = 5)
|
||||
public SDKPlatform getSdkPlatform() {
|
||||
return this.sdk_platform_;
|
||||
}
|
||||
|
||||
@Protobuf(tag = 10)
|
||||
public String getTopic() {
|
||||
return this.topic_;
|
||||
}
|
||||
|
||||
@Protobuf(tag = 9)
|
||||
public int getTtl() {
|
||||
return this.ttl_;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
package com.google.firebase.messaging.reporting;
|
||||
|
||||
import com.google.firebase.encoders.annotations.Encodable;
|
||||
import com.google.firebase.encoders.proto.Protobuf;
|
||||
import com.google.firebase.messaging.ProtoEncoderDoNotUse;
|
||||
import java.io.IOException;
|
||||
import java.io.OutputStream;
|
||||
|
||||
/* loaded from: classes3.dex */
|
||||
public final class MessagingClientEventExtension {
|
||||
private static final MessagingClientEventExtension DEFAULT_INSTANCE = new Builder().build();
|
||||
private final MessagingClientEvent messaging_client_event_;
|
||||
|
||||
/* loaded from: classes3.dex */
|
||||
public static final class Builder {
|
||||
private MessagingClientEvent messaging_client_event_ = null;
|
||||
|
||||
public MessagingClientEventExtension build() {
|
||||
return new MessagingClientEventExtension(this.messaging_client_event_);
|
||||
}
|
||||
|
||||
public Builder setMessagingClientEvent(MessagingClientEvent messagingClientEvent) {
|
||||
this.messaging_client_event_ = messagingClientEvent;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public MessagingClientEventExtension(MessagingClientEvent messagingClientEvent) {
|
||||
this.messaging_client_event_ = messagingClientEvent;
|
||||
}
|
||||
|
||||
public static MessagingClientEventExtension getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
public static Builder newBuilder() {
|
||||
return new Builder();
|
||||
}
|
||||
|
||||
@Encodable.Ignore
|
||||
public MessagingClientEvent getMessagingClientEvent() {
|
||||
MessagingClientEvent messagingClientEvent = this.messaging_client_event_;
|
||||
return messagingClientEvent == null ? MessagingClientEvent.getDefaultInstance() : messagingClientEvent;
|
||||
}
|
||||
|
||||
@Protobuf(tag = 1)
|
||||
@Encodable.Field(name = "messagingClientEvent")
|
||||
public MessagingClientEvent getMessagingClientEventInternal() {
|
||||
return this.messaging_client_event_;
|
||||
}
|
||||
|
||||
public byte[] toByteArray() {
|
||||
return ProtoEncoderDoNotUse.encode(this);
|
||||
}
|
||||
|
||||
public void writeTo(OutputStream outputStream) throws IOException {
|
||||
ProtoEncoderDoNotUse.encode(this, outputStream);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user