Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ALeapp task #2095

Draft
wants to merge 99 commits into
base: master
Choose a base branch
from
Draft

ALeapp task #2095

wants to merge 99 commits into from

Conversation

patrickdalla
Copy link
Collaborator

Hi @lfcnassif , I decided to create this pull request, but marked it as draft, as I am leaving on vacation

that does informs the non existence of registered artifacts in script,
meaning it won't be treated as a plugin. Other exceptions are rethrown.
static variable, multiple plugins concurrent execution were scrambling
device info between their specific file Output. As the necessary result
is the merging of those all info, the concurrency is not a problem,
being it done at the end of all individual plugins processing (4th
queue).
allowing replacement of methods to redirect HTML table lines insertion
to IPED classes, as long as logfunc and logdevinfo calls.
ALeapp, making it possible to override python class. It skips any
keyword arguments passed to any class method.
report file, this means that this file is a genereted detailed content
for this item. So, it is exported as the content of the artifact item.
exported file, saves it as a link and return, avoiding duplicate
metadatas.
was leading to exception as fileLoader does not work with these files
inside zip. So, for now, as ALeapp will be deployed unzipped, ignores
the override of any files that are inside ZIP libs.
with double backslash, as it backslash is a escape char in python.
referenced media file in html report. Inside IPED, this can just add a
link to the media (TO BE IMPLEMENTED).
method declaration. If so, method name is not declared, so a direct
access to this PyCallable should be done.
@patrickdalla
Copy link
Collaborator Author

I've made some more tests and pontual enhancements and corrections. I think I should some third developer evaluation/opinion before continuing, @lfcnassif. I fact, if the design is good and no errors found, I think this can be merged as is.

@lfcnassif
Copy link
Member

lfcnassif commented May 21, 2024

Thank you very much @patrickdalla! This is a very important feature, I'll try to test it after other ready PRs scheduled for 4.2 in the queue.

One question: if an UFDR is processed with this PR, will we get duplicated results coming from PA decoding and from ALeapp decoding? If yes, I think it should be avoided or be configurable. Maybe with a similar approach used for WhatsApp today, or maybe with the approach that would be implemented for #2012.

@patrickdalla
Copy link
Collaborator Author

patrickdalla commented May 21, 2024 via email

@patrickdalla
Copy link
Collaborator Author

patrickdalla commented May 21, 2024 via email

@patrickdalla
Copy link
Collaborator Author

patrickdalla commented May 21, 2024 via email

@lfcnassif
Copy link
Member

lfcnassif commented May 21, 2024

Anyway, there is already a config file to inform which Aleapp parser not to run.

Great!

Also, thinking twice, the task searches for items from already processed
items and its paths. As IPED uses UFDR xml info to restore original path in
cel FS, maybe, with some simple modification, Aleapp parser can find these
items too. I will check it.

I think it can be useful, for example, for an application supported by ALeapp but not supported by PA, or if PA decoding brings incomplete or eventually wrong results. For this last example, disabling PA results importing per application may be needed, but that is related to #2012.

PS: Running ALeapp into AB backups (when #2079 is merged) should be very useful too.

@patrickdalla
Copy link
Collaborator Author

Yes, it worked with the modifications of last commit, ALeapp plugins found and processed items from UFDR.

@prosch88
Copy link

I'm eager to see this merged into main. Is this bringing ileapp too? Or is this planned for another PR?

@lfcnassif
Copy link
Member

I'm eager to see this merged into main. Is this bringing ileapp too? Or is this planned for another PR?

AFAIK this is just about ALeapp integration, iLeapp should be done later. Would you like to help testing? There is a snapshot with this support below, you should be logged in github to see the download link:
https://github.com/sepinf-inc/IPED/actions/runs/9180006157

@lfcnassif
Copy link
Member

Hi @patrickdalla, an user/developer is trying to test this, but got an error "no module named geopy". What is the updated python dependency list needed to run this PR?

@lfcnassif
Copy link
Member

lfcnassif commented Jun 14, 2024

Just found this list in Teams, posting here for those willing to help testing, let me know if it is outdated:

bcrypt==3.2.0
beautifulsoup4==4.8.2
bencoding
blackboxprotobuf
fitdecode==0.10.0
folium==0.14.0
geopy==2.3.0
packaging==20.1
pillow
polyline==2.0.0
protobuf==3.10.0
PyCryptodome
PySimpleGUI
pytz
simplekml
wheel
xlsxwriter==3.1.1
xmltodict
python-magic
libmagic
python-magic-bin
filetype

Just put those into a requirements.txt file and run from iped embedded python:
pip install -r requirements.txt

@lfcnassif lfcnassif added this to In progress in 4.3 via automation Jun 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
4.3
In progress
Development

Successfully merging this pull request may close these issues.

None yet

3 participants