- 博客(19)
- 资源 (1)
- 收藏
- 关注
转载 Jellybean上relro引起的 SEGV_ACCERR段错误问题
在JB上,有时候会发现,以前在ICS上跑的好好的程序,在JB上一运行,就发生 SEGV_ACCERR 问题,比如上一篇文章说到的,HAL模块的HMI中修改dso会造成段错误。出错时的debuggerd输出,大约有如下信息:fault addr 3cde4bf43cde2000-3cde5000 r--p 00050000 b3:01 595 /system/lib/
2013-08-30 11:41:19 2179
原创 Linux如何查看与/dev/input目录下的event对应的设备
1. /dev/input目录 /dev/input目录下的事件都是在驱动中调用input_register_device(struct input_dev *dev)产生的。如我的盒子的/dev/input目录的内容如下:crw-rw---- root input 13, 64 1970-01-01 08:00 event0crw-rw---- root
2013-08-30 11:03:28 43278 4
原创 SELinux策略语言--角色和用户
1. 简介 SELinux提供了一种依赖于类型强制(TE)基于角色的访问控制(RBAC),角色用于组域类型和限制域类型与用户之间的关系,SELinux中的用户关联一个或多个角色,使用角色和用户,RBAC特性允许有效地定义和管理最终授予Linux用户的特权。 域类型用户
2013-08-23 17:40:56 7144
原创 APK基本了解
1. 简介 很多人热衷于逆向工程,其过程中既可以学习作者的思路,又可以锻炼自己的能力,可谓是一举多得! 今天我来给大家伙介绍介绍我所了解的apk反编译的相关技术,和大家一起来做一个逆向工程. 提醒:未经授权而逆向别人的程序是违法行为! 在此,我们只做学术研究,不搞破坏~ 2. 基本知识 1) 反编译的结果有两种:一种是smali (java机器码);另一种
2013-08-21 09:36:41 4935
原创 SELinux策略语言--客体类别和许可
1. 简介 SELinux策略语言主要描述policy.conf的相关语法,其相关部分如下图所示:2. 客体类别和许可
2013-08-19 15:48:12 13259 4
原创 SELinux架构
1. 内核架构 SELinux在所有内核资源上提供增强的访问控制,在它目前的格式下,SELinux是通过LSM框架合并到内核中的。 1.1 LSM框架 LSM框架的思想是允许安全模块以插件形式进入内核,以便更严格地控制Linux默认的基于身份的任意访问控制(DAC)安全性。LSM在内核系统调用逻辑中提供了一套钩子(hooks),这些钩子通常放在标准Linux访问检查后
2013-08-19 10:51:43 7052
原创 Android Codenames + Tags + Build Numbers
参见:http://source.android.com/source/build-numbers.html
2013-08-16 10:13:07 1298
原创 Ubuntu12.10 编译Android 4.2
1. 简介 本文描述在X86 64位机(CPU i5)建立Android 4.2编译环境。2. 安装Ubuntu12.10 从http://releases.ubuntu.com/quantal/上下载 PC (Intel x86) desktop image,然后进行安装即可。 3. 建立Android4.2编译环境 Android编译环境
2013-08-16 09:12:50 4595
原创 SELinux - Multi-Level Security (MLS)
1. 简介 保护敏感和机密信息在商业领域、军事、情报机构和政府等领域都是至关重要的。在同一台计算机上放置不同安全级别的信息构成了真正的威胁。如果为不同安全级别的信息购买相应的系统,这代价是相当昂贵的。为了解决此问题,需要一个机制,使在不同的安全级别的用户同时访问系统时,系统没有信息污染的恐惧。2. 为什么需要多级? 多级来源于
2013-08-12 14:34:29 7218
原创 SELinux - MCS
1. 简介 多类安全 (MCS: Multi-Category Security)是一个增强的SELinux,允许用户使用类别来标记文件。
2013-08-12 14:07:25 2892
原创 Linux安全--访问控制机制(ACM)
1. 访问控制机制(ACM) ACM:即Access Control Mechanism ACM为系统管理员提供了一种控制哪些用户、进程可以访问不同的文件、设备和接口等的一种方式。当需要确保计算机系统或网络安全时,ACM是一个主要的考虑因素。 ACM主要有以下6种方式: 1) 自主访问控制:Discretionary Access Control (DAC)
2013-08-12 08:57:35 10080
原创 SELinux深入理解
1. 简介 SELinux由以下两部分组成: 1) Kernel SELinux模块(/kernel/security/selinux) 2) 用户态工具1.1 DAC与MAC的关键区别(root用户) 在SELinux(MAC)中,没有root用户的概念。安全策略是由【管理员】定义,并应用于每一个【进程】和【对象】,没有什么可以替代它。这意味着恶意
2013-08-09 15:33:17 109976 5
转载 SELinux简介
1. 简介 SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux® 上最杰出的新安全子系统。NSA是在Linux社区的帮助下开发了一种访问控制体系,在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件。SELinux 默认安装在 Fedora 和 Red Hat Enterprise Linux
2013-08-08 17:35:32 8027
转载 Linux Socket编程
1. 基本socket函数Linux系统是通过提供套接字(socket)来进行网络编程的。网络的socket数据传输是一种特殊的I/O,socket也是一种文件描述符。socket也有一个类似于打开文件的函数:socket(),调用socket(),该函数返回一个整型的socket的描述符,随后的连接建立、数据传输等操作也都是通过该socket实现。1.1 socket函数定义:
2013-08-07 11:30:05 1984
原创 Linux Netlink
1. Netlink简介 Netlink 是一种特殊的 socket,它是一种在内核与用户间进行双向数据传输的一种方式,用户态应用使用标准的 socket API 就可以使用 Netlink 提供的强大功能,内核态需要使用专门的内核 API 来使用 Netlink。 系统已定义的Netlink种类如下:类似于 BSD 中的AF_ROUTE 但又远比它的功能强大,目前
2013-08-07 10:16:19 9362
原创 Android System.loadLibrary及JNI_OnLoad简介
1. Android系统加载JNI Lib的方法 Android系统加载JNI Lib的方法有如下两种: 1) 通过JNI_OnLoad 2) 如果JNI Lib没有定义JNI_OnLoad,则dvm调用dvmResolveNativeMethod进行动态解析2. JNI_OnLoadSystem.loadLibrary调用流程如下所示:System.loa
2013-08-02 16:42:12 17548
原创 C/C++与汇编混合编程简介
1. 简介 当需要C/C++与汇编混合编程时,可以有以下两种处理策略:若汇编代码较短,则可在C/C++源文件中直接内嵌汇编语言实现混合编程。若汇编代码较长,可以单独写成汇编文件,最后以汇编文件的形式加入项目中,通过ATPCS规定与C程序相互调用及访问。
2013-08-01 15:12:57 16302 2
原创 ARM CPSR+SPSR
1. 简介 CPSR(当前程序状态寄存器)在任何处理器模式下被访问。它包含了【条件标志位】、【中断禁止位】、【当前处理器模式标志】以及其他的一些控制和状态位。每一种处理器模式下都有一个专用的物理状态寄存器,称为SPSR (备份程序状态寄存器)。 当特定的异常中断发生时,这个寄存器用于存放当前程序状态寄存器的内容。在异常中断退出时,可以用SPSR来恢复CPSR。由于用户模式
2013-08-01 14:40:59 11157
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人