android-exploitme(六):基础加密

这次我们看看程序在设备上存储了什么敏感信息

(server-env)sartre:AndroidLabs2 maxim$ adb shell
# cd /data/data/com.securitycompass.androidlabs.base
# ls
lib
shared_prefs
# cd shared_prefs
# ls
preferences.xml
com.securitycompass.androidlabs.base_preferences.xml

查看preferences.xml文件如下:

# cat preferences.xml
<?xml version=‘1.0‘ encoding=‘utf-8‘ standalone=‘yes‘ ?>
<map>
<string name="serverpass">password</string>
<string name="localpasssalt">+tm+vXQuNL01T2caEwlG6XBj9ZrS9w5XfVk5EFV15SQ=
</string>
<string name="serveruser">jdoe</string>
<boolean name="firstrun" value="false" />
<string name="localpasshash">vt8O7P2Y1dPYjRJG/F7QXADtpc2/DxlvpYya2b/oSIA=
</string>
</map>

可以看到他明文保存了用户名和密码,这种敏感数据应该加密存储,或者不存储,由backend验证

android-exploitme(六):基础加密

时间: 2024-08-01 10:22:16

android-exploitme(六):基础加密的相关文章

Android第六期 - ViewPage与菜单栏本地页面监听滑动效果

首先是JiaoyuzixunActivity.java代码部分: package com.gaoxiaotong.ctone.jiaoyuzixun; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import org.json.JSONArray; import org.json.JSONO

Java(Android)线程池---基础篇

1.new Thread的弊端 执行一个异步任务你还只是如下new Thread吗? 1 newThread(newRunnable(){ 2 3 @Override 4 publicvoidrun(){ 5 // TODO Auto-generated method stub 6 } 7 }).start(); 那你就out太多了,new Thread的弊端如下: a. 每次new Thread新建对象性能差.b. 线程缺乏统一管理,可能无限制新建线程,相互之间竞争,及可能占用过多系统资源导致

Android 触摸手势基础 官方文档概览2

Android 触摸手势基础 官方文档概览 触摸手势检测基础 手势检测一般包含两个阶段: 1.获取touch事件数据 2.解析这些数据,看它们是否满足你的应用所支持的某种手势. 相关API: MotionEvent 兼容版的: MotionEventCompat  (Note that MotionEventCompat is not a replacement for the MotionEvent class. Rather, it provides static utility metho

Android总结六(BroadcastReceiver)

一.接收广播消息 1.什么是BroadcastReceiver? BroadcastReceiver是Android系统四大组件之一,本质上就是一种全局的监听器,用于监听系统全局的广播消息. 2.怎样创建BroadcastReceiver? 1)创建一个类继承自BroadcastReceiver类: 2)在AndroidManifest.xml配置<receiver>节点信息. 3.一旦实现了BroadcastReceiver,接下来就应该制定该BroadcastReceiver能匹配的Int

【Android开发经验】DES加密时代的终结者——AES加密算法

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 在前面的两篇文章中,我们介绍了DES算法,3DES算法以及他们的Android程序实现,并研究了如何才能实现不同平台下加密算法的一致性.不过话说起来,DES算法是在1976年被美国的国家标准局定为联邦资料的加密标准的,到现在已经接近40年了.我们都知道,在计算机的世界里有一个摩尔定律,就是每过18个月,计算机的晶体管的数量就会翻一番,对应的计算速度也会翻倍,虽然现在的发展速度有所放缓,但是每过三年左右,计

Android触控基础:MotionEvent

之前的文章层从Framework层介绍了Android Touch事件即(MotionEvent)的传递机制.本文将详细介绍MotionEvent的一些成员和方法.了解了MotionEvent对开发一些特效如拖动控件或多点缩放控件有很大的作用.同时,掌握MotionEvent类也是学好android触控技术的基础. 一.一些常量 常见的动作常量: public static final int ACTION_DOWN             = 0;单点触摸动作 public static fi

Android学习之基础知识十六 — Android开发高级技巧的掌握

一.全局获取Context的技巧 前面我们很多地方都使用到了Context,弹出Toast的时候.启动活动的时候.发送广播的时候.操作数据库的时候.使用通知的时候等等.或许目前来说我们并没有为得不到Context而发愁,因为我们很多地方都是在活动中进行的,而活动本身就是一个Context对象,但是,当应用程序的架构逐渐开始复杂起来的时候,很多的逻辑代码都将脱离Activity类,但此时又恰恰需要使用Context,特许这个时候就会感到有些伤脑筋了. 举个例子,在前面网络编程的最佳实践中,我们编写

Android开发学习——基础学习

在微信公众号上,发现一个自学android的一个文章,觉得不错.对其进行小小总结,整理给大家. 1. 基础UI学习 Button/TextView/EditText/CheckBox/ImageView/GirdView等,在activityMain.xml里设置,在屏幕上占一块地方. 可以设置这些组件的属性, :id(唯一标识) :layout_width(宽) :layout_height(高) :text(文本) :textsize/textcolor/textstyle :layout_

Android软键盘基础总结(一)

一年多时间以来,一直在学习,去从来疏于整理,搞得知识点好凌乱,是时候开始做个总结啦,一步步来,从基础深入吧. 今天就讲解Android的软键盘windowSoftInputMode属性:其中有adjustXX共5个合stateXX共6个:加起来就是10个: adjustXX这一系列的属性在测试中发现是通过调整窗体/窗体里面的某些属性来显示软件盘的.注意:这一系列模式只在 有输入必要的时候才会弹出软键盘 adjustResize:activity总是会被调整大小,来确保软键盘可以显示出来,并且不一