漏洞分析

0

高危漏洞

1

中危漏洞

0

低危漏洞

2

警告

文件名 shjtnew.apk
上传者 asd
文件大小 18.980450630188MB
MD5 3b39920b768f39d0f9f4fa0d9ca22004
包名 cn.sh.jt.lbs.complex
Main Activity cn.sh.jt.lbs.complex.MainActivity
Min SDK 14
Target SDK 28

权限列表

# 名称 说明 提示
0 android.permission.ACCESS_COARSE_LOCATION 访问大概的位置源(例如蜂窝网络数据库)以确定手机的大概位置(如果可以)。恶意应用程序可借此确定您所处的大概位置。 注意
1 android.permission.ACCESS_FINE_LOCATION 访问精准的位置源,例如手机上的全球定位系统(如果有)。恶意应用程序可能会借此确定您所处的位置,并可能消耗额外的电池电量。 注意
2 android.permission.READ_PHONE_STATE 允许应用程序访问设备的手机功能。有此权限的应用程序可确定此手机的号码和序列号,是否正在通话,以及对方的号码等。 注意
3 android.permission.WRITE_SETTINGS 允许应用程序修改系统设置方面的数据。恶意应用程序可借此破坏您的系统配置。 注意
4 android.permission.ACCESS_NETWORK_STATE 允许应用程序查看所有网络的状态。 提示
5 android.permission.ACCESS_WIFI_STATE 允许应用程序查看有关WLAN状态的信息。 提示
6 android.permission.CHANGE_CONFIGURATION 允许应用程序更改当前配置,例如语言设置或整体的字体大小。 提示
7 android.permission.CHANGE_WIFI_STATE 允许应用程序连接到WLAN接入点以及与WLAN接入点断开连接,并对配置的WLAN网络进行更改。 提示
8 android.permission.INTERNET 允许程序访问网络. 提示
9 android.permission.VIBRATE 允许应用程序控制振动器。 提示
10 android.permission.WAKE_LOCK 允许应用程序防止手机进入休眠状态。 提示
11 android.permission.WRITE_EXTERNAL_STORAGE 允许应用程序写入SD卡。 提示

四大组件

组件名称

cn.sh.jt.lbs.complex.MainActivity
cn.sh.jt.lbs.complex.rtb.MainActivity
cn.sh.jt.lbs.complex.rtb.SearchActivity
cn.sh.jt.lbs.complex.rtb.VehicleActivity
cn.sh.jt.lbs.complex.airport.bus.MainActivity
cn.sh.jt.lbs.complex.rtt.MainActivity
cn.sh.jt.lbs.complex.ferry.MainActivity
cn.sh.jt.lbs.complex.ferry.TimetableActivity
cn.sh.jt.lbs.complex.metro.MainActivity
cn.sh.jt.lbs.complex.metro.StationActivity
cn.sh.jt.lbs.complex.metro.WayActivity
cn.sh.jt.lbs.complex.travel.MainActivity
cn.sh.jt.lbs.complex.railway.MainActivity
cn.sh.jt.lbs.complex.charging.MainActivity
cn.sh.jt.lbs.complex.travel.SearchActivity
cn.sh.jt.lbs.complex.travel.bus.PathsActivity
cn.sh.jt.lbs.complex.travel.bus.PathActivity
cn.sh.jt.lbs.complex.travel.RouteActivity
cn.sh.jt.lbs.complex.travel.drive.PathActivity
cn.sh.jt.lbs.complex.travel.navi.MainActivity
cn.sh.jt.lbs.complex.flight.MainActivity
cn.sh.jt.lbs.complex.flight.ListActivity
cn.sh.jt.lbs.complex.flight.PlaceActivity
cn.sh.jt.lbs.complex.flight.DetailActivity
cn.sh.jt.lbs.complex.coach.MainActivity
cn.sh.jt.lbs.complex.coach.ListActivity
cn.sh.jt.lbs.complex.whole.MainActivity
cn.sh.jt.lbs.complex.card.transit.MainActivity
cn.sh.jt.lbs.complex.card.etc.MainActivity
cn.sh.jt.lbs.complex.my.AboutUSActivity
cn.sh.jt.lbs.complex.my.ServiceContractActivity
cn.sh.jt.lbs.complex.my.FeedbackActivity
cn.sh.jt.lbs.complex.travel.MapLocationActivity
cn.sh.jt.lbs.complex.jbh.MainActivity

android.support.v4.content.FileProvider

第三方库

# 库名 介绍
0 me.relex.circleindicator a lightweight viewpager indicator like in nexus 5 launcher
1 com.google.protobuf Protocol Buffers - Google's data interchange format https://developers.google.com/protocol-buffers/
2 okhttp3 An HTTP+SPDY client for Android and Java applications.
3 com.wdullaer.materialdatetimepicker Pick a date or time on Android in style
4 retrofit2 Type-safe REST client for Android and Java by Square, Inc.
5 me.codeboy.android.aligntextview 字体对齐的textview

静态扫描发现风险点

风险等级 风险名称

中危

该app需要移除大部分日志打印代码。
经扫描该包仍存在大量打日志代码,共发现16处打日志代码.(此处扫描的日志打印代码,是指调用android.util.Log.* 打印的.)
详情如下:

位置: classes2.dex
com.wdullaer.materialdatetimepicker.time.TimePickerDialog;->processKeyUp(I)Z==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.wdullaer.materialdatetimepicker.time.RadialTextsView;->initialize(Landroid/content/Context; [Ljava/lang/String; [Ljava/lang/String; Lcom/wdullaer/materialdatetimepicker/time/TimePickerController; Lcom/wdullaer/materialdatetimepicker/time/RadialTextsView$SelectionValidator; Z)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.wdullaer.materialdatetimepicker.time.AmPmCirclesView;->initialize(Landroid/content/Context; Lcom/wdullaer/materialdatetimepicker/time/TimePickerController; I)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.wdullaer.materialdatetimepicker.time.RadialSelectorView;->initialize(Landroid/content/Context; Lcom/wdullaer/materialdatetimepicker/time/TimePickerController; Z Z I Z)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.wdullaer.materialdatetimepicker.time.RadialPickerLayout;->onTouch(Landroid/view/View; Landroid/view/MotionEvent;)Z==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.wdullaer.materialdatetimepicker.time.RadialSelectorView;->getReappearAnimator()Landroid/animation/ObjectAnimator;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.wdullaer.materialdatetimepicker.time.RadialPickerLayout;->setCurrentItemShowing(I Z)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.wdullaer.materialdatetimepicker.time.RadialSelectorView;->getDisappearAnimator()Landroid/animation/ObjectAnimator;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.wdullaer.materialdatetimepicker.date.DayPickerView;->goTo(Lcom/wdullaer/materialdatetimepicker/date/MonthAdapter$CalendarDay; Z Z Z)Z==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.wdullaer.materialdatetimepicker.time.CircleView;->initialize(Landroid/content/Context; Lcom/wdullaer/materialdatetimepicker/time/TimePickerController;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.wdullaer.materialdatetimepicker.time.RadialTextsView;->getReappearAnimator()Landroid/animation/ObjectAnimator;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.wdullaer.materialdatetimepicker.time.RadialPickerLayout;->getCurrentItemShowing()I==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.wdullaer.materialdatetimepicker.time.RadialPickerLayout;->onTouch(Landroid/view/View; Landroid/view/MotionEvent;)Z==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.wdullaer.materialdatetimepicker.time.RadialTextsView;->getDisappearAnimator()Landroid/animation/ObjectAnimator;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.wdullaer.materialdatetimepicker.time.RadialPickerLayout;->initialize(Landroid/content/Context; Lcom/wdullaer/materialdatetimepicker/time/TimePickerController; Lcom/wdullaer/materialdatetimepicker/time/Timepoint; Z)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.wdullaer.materialdatetimepicker.time.TimePickerDialog;->getAmOrPmKeyCode(I)I==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I

警告

检测到1处provider的grantUriPermissions设置为true。
android.support.v4.content.FileProvider


grant-uri-permission若设置为true,可被其它程序员通过uri访问到content provider的内容,容易造成信息泄露。

参考资料:
https://security.tencent.com/index.php/blog/msg/6

警告

检测到1处使用了加解密算法。密钥处理不当可能会导致信息泄露。

位置: classes2.dex
okio.HashingSource;->(Lokio.Source; Lokio.ByteString; Ljava.lang.String;)V

参考案例:
http://www.wooyun.org/bugs/wooyun-2010-0105766
http://www.wooyun.org/bugs/wooyun-2015-0162907
http://www.wooyun.org/bugs/wooyun-2010-0187287

参考资料:
http://drops.wooyun.org/tips/15870
https://developer.android.com/training/articles/keystore.html


动态扫描发现风险点

风险等级 风险名称

服务端分析

风险等级 风险名称

警告

检测到?处XSS漏洞。
开发中...

警告

检测到?处XSS跨站漏洞。
开发中...

应用证书