信息安全兴趣小组 – Android 基本架构

0x00 Android逆向前期准备

  • Android 设备:模拟器、真机均可,推荐Google系列手机。没有就算了, 没必要特意去买,不建议在日常使⽤的⼿机上操作。
  • Android 设备ROM:建议使⽤基于AOSP(Android Open Source Project) 的ROM,也就是所谓的原生安卓,比如LineageOS、CyanogenMod、Mokee、OnePlus H2OS和 O2OS等。
  • 需要取得Android 的ROOT权限,推荐Android 版本为Android 5.0 – Android 7.1.1,安装Xposed。
  • 电脑:推荐使用macOS或Linux,Windows也可。

继续阅读“信息安全兴趣小组 – Android 基本架构”

信息安全兴趣小组-基础培训第5讲

一、Linux操作系统

  • 除了Windows系统以外,经常使用的一个系统,用于服务器、开发较多。
  • 是基于Unix的系统,实际上Linux发展到今天已经不是特指某一款操作系统,而是一个操作系统的集合。
  • 本文所说的Linux操作系统指的是“Linux发行版”。
  • Linux发行版的主要分类:
    • 基于Debian:GNU的Linux标准,软件包格式为deb。其衍生的发行版版有Ubuntu、Kali等。
    • 基于Redhat:Redhat公司的Linux标准,软件包格式为rpm。其衍生的发行版有Fedora、CentOS、openSUSE等。
    • 其他Linux系统:例如Oracle Linux。
  • Linux Kernel:Kernel即内核,内核指的是操作系统中最核心的一部分。Linux Kernel是完全开放源代码的,可以到 The Linux Kernel Archives 网站查看其源代码或者下载下来进行编译。
  • 使用环境:Linux是支持桌面GUI环境的,主要实现有GNU的GNOME桌面、KDE和Ubuntu的Unity桌面等。但是更多的时候我们是在“命令行”下使用Linux,我们称为Shell。Shell英文意为“壳”,形象的表述了Shell是Linux Kernel的外层。

继续阅读“信息安全兴趣小组-基础培训第5讲”

信息安全兴趣小组 – 基础培训第2讲

一、使用专有协议和HTTP协议的C/S模式的例子

  • 这次要看代码了,不过不是让你们非要读懂代码,就是先简单看一看感受一下网络编程。通过这个例子我们将会引出一些很重要的东西来
  • 客户端概况:iOS客户端,使用的是Objective-C语言(类似于C语言)
  • 服务器端概况:Java语言编写的的服务器
  • 这里注意,什么语言不重要,以后你们会更好的领会这一点,因为编程语言都是相通的,一通则百通。

继续阅读“信息安全兴趣小组 – 基础培训第2讲”

信息安全兴趣小组 – 基础培训第1讲

一、计算机如何从网络上获取数据

  1. 总的模式是:客户端-服务器模式(C/S模式)。客户端向服务器发送请求,而服务器给客户端以回应。这个过程中两方是不对等的(两方对等的模式:P2P模式)。
  2. 服务器一般称为“云”而客户端不只局限于传统PC,智能手机、物联网设备也可以归为客户端一类,以后泛指此类设备为“计算机”。
  3. 协议:计算机之间进行通信的格式,不同的协议如果不经过特殊处理,是不能够进行通信的。
  4. C/S模式主要的优势:可以使用专用的协议,有利于保密,更安全一些。主要的劣势:受到操作系统(平台)的约束,兼容性可移植性差一些。
  5. IP地址和域名:IP地址可以唯一标示网络上的一台计算机(当然不同网络上的计算机IP地址可以相同),而域名是为了让人们容易记忆而形成的,域名通过DNS服务器解析为IP地址。
  6. B/S模式:浏览器-服务器模式,其实也是C/S模式的一种,只不过客户端是浏览器。这里的服务器一般称为HTTP服务器或者叫Web服务器。
  7. B/S模式的优势:浏览器和操作系统无关,兼容性强。劣势:安全性差,因为一般都用HTTP协议,所以容易遭受攻击。

继续阅读“信息安全兴趣小组 – 基础培训第1讲”