Comments (6)
Please take a look at different result on Windows with same apk file.
There are two issues with current apk-mitm running in Windows.
- Glob pattern only support posix path i.e forward-slashes which is different from Windows path conventions, therefore it won't be able to find any .smali files in the directory.
const smaliFiles = await globby(path.join(directoryPath, 'smali*/**/*.smali'))
METHOD_PATTERNS
is derived from regex which matches Linux's new line characterLF
but if you decode an apk on Windows, it will haveCRLF
as new line character so the regex won't be able to find the match of method signatures.
CC @Surendrajat
from apklab.
apk-mitm maintainer here! 👋 I saw you starred my repository and found APKLab through that. I haven't tried it yet, but it looks very promising and I will definitely give it a try in my next Android reverse engineering effort. If you need me to make any changes (like adding an option to path APKs that have already been decoded into a directory, etc.), don't hesitate to let me know! 😃
from apklab.
Hi @shroudedcode. Thanks for the cool project. I found it through GH recommendations :)
Man, I'd have loved to see that option in apk-mitm but with a little discussion(thinking of not bothering you right away ;), we agreed to ship all the patching logic from apk-mitm in APKLab itself(and an extended LICENSE file too), and as you can see my friend @amsharma44 has already started work to port it over to APKLab in this branch. Hope that's okay.
However, we hit a roadblock on windows with posix path being ignored and LF
in regex not working with CRLF
. Is that something only we are facing? or apk-mitm has the same issue? Once we fix it we are planning to open a PR in apk-mitm as well.
from apklab.
we agreed to ship all the patching logic from apk-mitm in APKLab itself(and an extended LICENSE file too), [...]. Hope that's okay
That's fine with me! Maybe you could also add some credit to the top of the mitm-tools.ts
file. This is less about licensing and more about making it easier for people source-diving to see the where that code originally came from:
// MITM patching code adapted from:
// https://github.com/shroudedcode/apk-mitm
However, we hit a roadblock on windows with posix path being ignored and
LF
in regex not working withCRLF
.
Can you clarify in which cases these two things become an issue? Which paths are being ignored and which regex patterns are affected by this?
from apklab.
Maybe you could also add add some credit to the top of the mitm-tools.ts file.
Even though I'm planning to link it in the description and credit section in README, this is also a good idea.
Can you clarify in which cases these two things become an issue? ...
It's when we tested new branch out on windows it detects all related smali files but can't replace the function content. See if fd9dc9b makes some sense to you.
CC @amsharma44
from apklab.
Thanks for the explanation, @amsharma44! I've opened an issue on the apk-mitm
repo about this.
from apklab.
Related Issues (20)
- Rename package name feature HOT 1
- Apklab
- hi
- Try to merge classes unless there are conflicting methods HOT 1
- Ignore list to ignore certain known classes or libraries
- Open APK didn't worked HOT 7
- Add search Feature
- Running APKLab in offline environment (Open APK) HOT 2
- Step "decompile_java" fails on Windows when username has a space in it. HOT 1
- OpenAPK cannot find the file? HOT 1
- how to set apklab.keystorePath HOT 1
- Adb install will fail if the filename contains space HOT 4
- Invalid CEN header (invalid zip64 extra data field size)
- Broken after decode
- error: resource android:bool/config_cecRcProfileTvNone_default is private. HOT 1
- Add flutter support
- Unable to access jarfile d HOT 2
- Changing .java files doesn't change smali which in turn doesn't reflect on built apk HOT 2
- NEED HELP ANALYZE MY GAME APK FILE, IT'S REPORTED AS VIRUS BY GOOGLE PLAY PROTECT
- HTTPS Inspection Patch Doesn't Work for Gaana.com apk
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from apklab.