zoukankan      html  css  js  c++  java
  • [置顶] 对于最新的Android病毒,Smack完全可以抵御

    我写的有关Smack和Android系统结合的技术博客,希望有志之士可以参透其中奥妙,Smack作为Linux内核安全模块,已经可以移植到Android系统中,如果大家弄清我写的Smack安全策略,可以结合自己想法,将Smack继续和Android系统结合,将会发挥更好的访问控制效果。

    为了实现模块化编程,libsmack库作为静态库或动态库装载,并为其它功能模块提供调用接口。libsmack库包含了smack开放给应用层的实用工具,其中较常用的是load_smack、setsmack和setsmackrule,它们分别表示装载smack虚拟文件系统、特权进程为自身设置安全标签和特权进程向/smack/load中写人smack规则。

    1. 定义头文件和源文件

    打开终端shell,输入指令“cd /android4.0/externalmkdir libsmack cd libsmack mkdir include mkdir src”,其中include为头文件所在目录,src为源文件所在目录。切换到include目录中,输入指令“mkdir smack cd smack vim smack.h”,定义以上三个函数,如下所示:


    切换到src目录下,新建load_smack.c、setsmackrule.c和setsmack.c三个文件并将这些函数实现。load_smack函数使用mount函数来挂载smackfs,setsmackrule首先格式化参数,然后利用write函数向/smack/load写入一条smack规则,setsmack利用write函数向“/proc/self/attr/current”中写入进程安全标签。

    2. 定义Android.mk文件

    Android.mk文件是Android源码的编译文件,包含了编译规则,类似Linux的makefile文件,Android.mk书写是有规则可循的,在此不再阐述。在该文件中加入“include $(BUILD_STATIC_LIBRARY)”和“include $(BUILD_SHARED_LIBRARY)”将其编译成静态和动态链接库。


  • 相关阅读:
    Linux系统下安装rz/sz命令及使用说明(文件上传下载)
    html 手机端click 事件延迟问题(fastclick.js使用方法)
    html 手机端click 事件去掉黑色阴影效果
    页面在Native端滚动时模拟原生的弹性滚动效果
    在 2016 年学 JavaScript 是一种什么样的体验?
    凸包---(简单概念)
    .NET框架
    项目使用技术-张子阳推荐
    MessageBox页面消息弹出框类
    c# DES 加密解密方法
  • 原文地址:https://www.cnblogs.com/pangblog/p/3265215.html
Copyright © 2011-2022 走看看