RLEAPP icon indicating copy to clipboard operation
RLEAPP copied to clipboard

Snapchat Artifacts not working

Open buzzkillionair opened this issue 3 years ago • 4 comments

I am currently trying to use the snapchat artifacts, however, they are not producing any output when they should be. I am unsure what is causing this. I am running it off Python version 3.11.2 and am on Windows 10. I have attached a screengrab of the processed files list. image

buzzkillionair avatar Mar 02 '23 16:03 buzzkillionair

Try ingesting the zips individually by using the Browse File button option.

abrignoni avatar Mar 03 '23 00:03 abrignoni

If htey are part of one return (which I haven seen before) uncompress them all and put the contents in the same directory then use the browse folder option.

abrignoni avatar Mar 03 '23 00:03 abrignoni

Try ingesting the zips individually by using the Browse File button option.

I have tried this and no difference

If htey are part of one return (which I haven seen before) uncompress them all and put the contents in the same directory then use the browse folder option.

I also tried this and no good. The logs were longer when I ran this but still nothing.

One thing I did notice was that the artifact snapChatHistory.py would produce the following error UnicodeDecodeError: 'charmap' codec can't decode byte 0x8d in position 20447: character maps to <undefined> To fix this I went into the artifact and when the file is opened, I added encoding="utf-8" which fixed some of the issues that I was having. Here is a snippoet of the change

OLD

if filename.startswith('chat_history.json'):
            data_list =[]
            with open(file_found, 'r') as fp:
                deserialized = json.load(fp)
            
            for x, y in deserialized.items():
                for mess in y:
                    typeline = x
                    #print(itemsdict)
                    if mess.get('From'):
                        directionality = mess['From']
                        directionality = 'From: ' + directionality
                    elif mess.get('To'):
                        directionality = mess['To']
                        directionality = 'To: ' + directionality
                        
                    mediatype = mess['Media Type']
                    created = mess['Created']
                    textm = mess['Text']
                    
                    data_list.append((created, directionality, textm, mediatype, typeline ))

NEW

if filename.startswith('chat_history.json'):
            data_list =[]
            with open(file_found, 'r', encoding="utf-8") as fp:
                deserialized = json.load(fp)
            
            for x, y in deserialized.items():
                for mess in y:
                    typeline = x
                    #print(itemsdict)
                    if mess.get('From'):
                        directionality = mess['From']
                        directionality = 'From: ' + directionality
                    elif mess.get('To'):
                        directionality = mess['To']
                        directionality = 'To: ' + directionality
                        
                    mediatype = mess['Media Type']
                    created = mess['Created']
                    textm = mess['Text']
                    
                    data_list.append((created, directionality, textm, mediatype, typeline ))
                    

seanmack56 avatar Mar 14 '23 15:03 seanmack56

The issue most likely then is that there are errors in the way python is decoding the file at open. A good solution is to add backslashreplace so it doesnt choke up with values it cant interpret.

See example here: https://www.learnbyexample.org/python-open-function/

If it works for your data set let me know and I will add to the code.

abrignoni avatar Mar 17 '23 00:03 abrignoni