渗透测试和安服_渗透测试和安卓逆向

hacker|
168

什么是网络渗透技术?

网络渗透技术其实就是安全研究员促进计算系统(包括硬件系统、软件系统)安全的技术,也是黑客用来入侵系统的技术。

下面我从入侵者的职业角色划分渗透测试工程师、代码审计工程师、逆向工程师、社会工程学(也是属于渗透一部分)、脚本小子详细说明网络渗透技术。

脚本小子

技能现成工具使用,脚本小子通常只是掌握了网上现有的入侵工具(脚本),不需知道原理对系统进行入侵。

渗透工程师

通过模仿恶意黑客的攻击手法,来评估计算机网络系统。

技能

渗透工程师又分为Web渗透、APP渗透。具体需要技能:编程技能(熟悉各种编程方式,擅长两到三门自己擅长的开发语言或脚本语言)、精通常见的漏洞原理具备漏洞复现能力、精通Linux/Windows系统(系扰茄戚统的使用、配置等)、精通常见的渗透工具或自己具备开发工具的能力(burpsuite等工具)、应急响应能力(入侵事件发生之后的清除、恢复、追踪能力等)、精通各种漏洞的防御策略、精通各种安全产品、熟悉《缓陵网络安全法》、熟悉网络架构、精通网络协议等。

渗透流程

社会工程学

利用人性的漏洞进行入侵攻击,如网络钓鱼、网络诈骗等。这类天马行空。

技能:

信息收集能力--通过一切手段收集目标信息,为分析目标做准备。

心理学--掌握心理学,通过分析收集的信息能大致掌握目标。

“欺诈”能力--构建目标容易上当的场景。

一定的开发、工具使用的能力--一些场景需要网络界面的支持。

胆大心细、脸皮厚、沟通能力强--有些是需要和目标直接进行交流的,可参考电影《我是谁:没有绝对安全的系统》。

代码审计

属于白盒测试即在代码中分析问题。

技能

精通一到两种代码(Java/Php/.net等)--代码审计说白了就是看代码,从源代码中发现漏洞。

工具使用能力--常见代码审计工具使用,提高效率。纳并

精通常见漏洞原理及某种代码中常见问题原理--不知道漏洞原理,看代码也白看,只能脑袋大。

逆向分析师

通过逆向分析,还原应用系统或某物体的(如汽车)对应用的编写过程进行还原、对物体的生产过程进行还原。突破原有限制达到绕过或篡改内部数据达到所需目标。这种对技术要求比较高,要掌握底层原理。

分类

安卓逆向、ios逆向、windows逆向、linux逆向、mac逆向

技能

必须掌握汇编语言、C语言、及各种底层系统精通语言指令

逆向工具使用如IDAPro,OllyDBG等

加固技术--常见的加壳方式、代码混淆方式

脱壳技术--能掌握脱壳原理,对加壳应用进行脱壳

网络安全都有哪些就业方向?

第一:安全运维工程师

由于有些知名度比较高的网站,每天工作量和资料信息都是非常庞大的,所以在网站正常运行状态中肯定会出现各种问题,比如一些数据丢失甚至是崩溃,都有可能出现,这个时候就需要一个网站维春埋护人员,而我们通过网络安全培训学习内容也是工作上能够用到的。

第二:网络安全工程师

为了防止黑客入侵盗取公司机密资料和保护用户的信息,许多公司都需要建设自己的网络安全工作,而网络散森迹安全工程师就是直接负责保护公司网络安全的核心人员。

第三:渗透测试

渗透测试岗位主要是模拟黑客攻击,利用黑客技术,挖掘漏洞,提出修复建议;需要用到数据库,网络技术,编程技术,操作系统,渗透技术,攻防技术,逆向技术等。

第四:等保测评

等保测评主要是针对目标信息系统进行安全级别评定,需要用到数据库、网络技术、操作系统、渗透技术、攻防技术等。

第五:攻防工程师

攻防工程师岗位主要是要求能够渗透能够防范,需要冲并用到数据库、网络技术、操作系统、编程技术、渗透技术等。

我是学信息安全专业的,请问那个渗透和逆向是什么呀?请大家解释一下,谢谢!

渗透就是模拟黑客攻击,好找寻祥数漏洞修补加固安全系统。

逆向,有的人也叫反求工程。大意是根据已有的东西和结果,通过分析来推导出具体的实物亮现方法。比如你看到别人写的某个exe程序谨蚂首能够做出某种漂亮的动画效果,你通过反汇编、反编译和动态跟踪等方法,分析出其动画效果的实现过程,这种行为就是逆向工程;不仅仅是反编译,而且还要推倒出设计,并且文档化,逆向软件工程的目的是使软件得以维护。

如何系统的学习安卓逆向分析

首先,逆向分析是一门技术,也是一门艺术。

其次,安卓逆向同样可细分为应用层APK逆向、安卓设备框架、内核族尘清驱动等逆向、基于安卓的硬件产品逆向等。此处假定楼主说的是第一种逆向。

应用层的逆向分析根据需求的不同,又可细分成APK流程逆向与功能逆向。

流程逆向通常是指简单的对APK运行流程进行分析,此类分析通常可以使用将APK置于沙盒环境中运行捕捉并查看运行结果。这种逆向需求通常不是很多,典型兆前的工种有杀软厂商的病毒分析工程师。

功能逆向相比流程逆向则困难得多。但需求比较普遍。实际逆向分析过程中对功能实现的理解,在很大程度上取决于逆向人员相关的软件开发知识。比如,分析Android程序的JAVA代码就需要掌握基本的Android软件开发的知识。分析so库的代码就需要了解C/C++相关的so库开发的知识。除了基本开发相关的能力外,逆向分析人员还需要具备以下知识:

ARM/X86/MIPS汇编语言-分析so库时可能需要阅读大量的反汇编代码。

常见逆向分析工具的使用-JDGUI/IDA PRO/APKTOOL/JEB/DEX2JAR

常用的安卓程序调试与反调试手段-调试器检测与反检测/脱壳/反混淆

常用的加密与解密算法-好的逆向分析人员需要有快速识别常见加密解密算法的能力

最后,就是多动手,多动手练习是掌握逆向分析技术最兄雹好的方法。

0条大神的评论

发表评论