サイバーセキュリティの初心者ガイド

先頭に次のように書きます。

  1. 法的な一線を越えないでください。

  2. 法律はあくまでも最後のラインであり、人格を測る基準ではありません。

ネットワークセキュリティは大きく次の 3 つの側面に分けられます。

安全研发安全研究:二进制方向安全研究:网络渗透方向

現在、最も多くの専門家がいる分野は Web ペネトレーション セキュリティです。ここでは主にバイナリと浸透方向について説明します。

1. ウェブの浸透

Web セキュリティの一般的な学習ルートから始めましょう (記事の最後にある高解像度の元の画像を参照)

 

現在の法的ペネトレーションテストは、さまざまな手段でターゲットにペネトレーション(攻撃)を行い、ペネトレーションを通じてターゲットのセキュリティ保護能力やセキュリティ意識をテストするものであり、実践的な演習でもある。

このような非常に長い Web 浸透ルートがオンラインで公開されていますが、基本的には同じです。ここでは個人的なアイデアをいくつか紹介します。(養成機関を安易に検討することはお勧めできません)

まず第一に、侵入テストはさまざまなツールの使用や単純な脆弱性マイニングに限定されてはなりません。侵入テストには、データベース、ネットワーク、オペレーティング システム、プログラミングなどが含まれますが、これらに限定されません。

開発なくして安全なし 初期学習はプログラミングとデータベースと切り離せないものであり、OSやネットワークについては初期学習で徐々に習得していきます。(初期段階では動画の選択にあまりこだわる必要はありません。比較的包括的な動画で十分です。記事の最後まで読むことはあまり選びません)

基本部分(すべてをマスターする必要はありません。その後の学習で徐々に深めていきます):

通信协议:TCP、HTTP、HTTPS操作系统:Linux、Windows服务架设:Apache、Nginx、LAMP架构数据库:MySQL、SQL Server、Oracle(建议MySQL入手)编程语言:前端语言(HTML/CSS/JavaScript)、后端语言(PHP/Java/ASP/Python)虚拟机操作,建站基本操作。

Web ペネトレーション学習を正式に開始:

TOP10漏洞原理抓包分析谷歌语法等技巧简单代码审计(面试加分项)各种工具使用搭建靶场漏洞复现

イントラネット浸透パート (面接の加点):

利用系统漏洞进行提权(Metasploit)Src:漏洞响应平台,实战渗透测试,同时能获得一些外快。补天漏洞响应平台:https://www.butian.net/漏洞银行:https://www.bugbank.cn/阿里云漏洞响应平台:https://security.alibaba.com/i春秋SRC部落:https://www.ichunqiu.com/src腾讯应急响应中心:https://security.tencent.com/index.php漏洞平台列表:https://www.anquanke.com/src/

2. バイナリセキュリティ

バイナリ ワークには、ソフトウェア脆弱性マイニング、リバース エンジニアリング、ウイルスおよびトロイの木馬の分析などが含まれ、オペレーティング システムのカーネル分析、デバッグとデバッグ対策、ウイルス対策およびその他のテクノロジが含まれます。ほとんどの場合、バイナリ データを扱うため、バイナリ セキュリティはこの方向を総称するために使用されるようになりました。

ここでは Android のセキュリティとリバース エンジニアリングに焦点を当てます。

個人的な提案: リバース エンジニアリングを行う前に、フォワード開発を数年間行ってください。コードを読まないと解凍されるだけ?露出だけですか?十分とは言えませんが、フックはテクノロジーのほんの一部にすぎず、xposed はフック機能を備えた多数のフレームワークの 1 つにすぎません。プログラム開発に比べて、逆向きの知識が少なく、重要なのは基礎知識であり、その基礎となるのは前向きの開発経験です。

Android を学ぶ前の前提条件 (セキュリティ職で尋ねられる基本的な質問)

从事3-5年真实的Android开发工作,熟练使用C/C++,Java,kotlin,dart等Android开发常用语言;熟悉Android NDK开发和JNI技术,熟悉Log原理。最好有几年FrameWork开发经验;熟悉Android虚拟机机制,打包原理,系统启动流程,App启动流程;了解ARM、Smali汇编语言,熟悉IPC原理,能够熟练搭建IPC框架;熟练使用Fiddler和Charles抓包工具进行抓包;最好熟悉Python基础语法,并能写简单的脚本和爬虫。

最初の段階:

Android の基本的なレビュー:

回顾Android 开发编程,深入理解Android系统原理和层次结构,深入分析Handler源码和原理。回顾Java,C/C++,Kotlin、dart 在Android开发中必用的语言,熟悉一下几种语言混淆后的特性。回顾Android IPC和JNI的底层原理和热更新技术回顾Native开发要点,使用C++结合NDK完成Android Native开发。回顾Android开发中常用的 AMS、PMS、WMS原理和App启动中服务加载的流程。回顾Android开发中必用的 Google的MVVM框架:DataBinding+LiveData+ViewModel。回顾Android开发中必用的 Google的MVP框架:Dagger2。回顾Android开发必用的网络架构:Okhttp3+RxJava2+Retrofit2+Rxdownload4+Rxcache+Glide。

Android リバースエンジニアリングの基本:

熟悉Android逆向工具的使用,如apktool,IDA,dex2jar,JEB,AndroidKiller,Androguard等;深入分析APK中包含的各文件格式,分析Android系统源码中解析APK的相关代码;学习和熟悉smali语言(重点);仿微信写一个APP,并利用工具逆向出apk内的代码,并对比源码分析。

入門知識と実戦(逆エントリー)のまとめ:

知识梳理,常用工具安装,adb命令与Linux常用命令,常见登录逻辑分析。分析ELF可执行程序,调式ELF可执行程序;ARM汇编与寄存器,ARM反汇编速成,ARM指令机器码,常用ARM指令集。反编译ELF文件与ObjDump,ELF文件解析与readelf,ELF文件解析与010Editor,深入分析ELF文件结构;IDA静态分析,IDA动态调式。简易计算器实现及分析(练习)。字符串加密与解密,冒泡排序算法分析。关键android_server文件检测,IDA调试端口检测。ELF可执行程序加载so库,DEX解析与dexDump,DEX解析与010Editor。实现自己的Dex解析工具与GDA(练习)。Androidkiller动态调试smali代码插件,AS+smalidea调式smali代码。Log注入实现免注册,如何定位关键代码,去除java层签名验证,去除广告和弹窗(实战)。推荐阅读《AndroidXXXXXX……》随便找本系统源码讲解的书看看吧。


Android の基本的なアルゴリズムとセキュリティ プロトコル:

密码学,对称加密算法,非对称加密算法,散列函数;数字签名,数字证书,SSL证书检测,协议与安全协议;了解服务器端与客户端通信协议分析;使用Charles抓登录封包和验证码,协议构造与Java层MD5算法,动态调式smali代码与sign字段;协议构造类与SO层DESCBC算法,协议关键字段SIGN与SO层MD5算法,动态调试协议字段,动态调式协议关键字段SIGN;协议关键字段pwad和sign,动态调式协议字段拼接与MD5加密,分析so层OpenSSLSHA1算法;封包加密与反编译失败,使用方法跟踪分析加密;java层逆向分析,分析so层TEA算法;练习:抓取验证码和登录封包,分析协议关键字段与RSA算法,证书与RSA原理及源码分析;对称加密AES、PBE与CRC算法,数字签名RSA、DSA算法;



第 2 段階:
Android のリバース高度学習:

Android 系统结构深入分析,自定义 ClassLoader,自定义注解和元注解原理分析;了解AndroidNDK,静态注册,动态注册,SO加载分析,App保护策略去除霸哥磁力搜素APK签名验证,一键去除签名验证,静态代{过}{滤}理,动态代{过}{滤}理Hook Activity启动函数,Hook签名验证函数介绍xposed框架:Xposed框架:绕过验证码注册Xposed框架:登陆劫持Xposed框架:篡改IMEI信息介绍CydiaSubstrate框架:Java层Hook:篡改系统文字颜色Java层Hook:修改方法返回值绕过登录Java层Hook:篡改游戏金币Java层Hook:篡改主机名和端口号Native层Hook:ADBI框架:ELFARMHOOK框架内存抠取Dex文件过反调试技巧C++游戏逆向练习:动态调试2048纯算法游戏,Zygote+Hook使2048游戏秒过关;


Android NDK と JNI の包括的な分析:

so动态库的介绍JNI动态注册和静态注册NDK Build 工具介绍Cmake工具介绍JNI.h介绍Android 源码工具和技巧ijkplayer 源码分析及原理讲解AndFix 源码分析及原理讲解Java调用so库的动态流程解析NDK实现增量更新案例:NDK实现换脸等工业级图像识别案例:NDK文件实现拆分和加密处理


Android の保護強化とシェルリングの概要:

DEX文件、ODEX文件与OAT文件;XML文件与ARSC文件;分析App加固的产生及背景,最初加固方式,加固技术的发展;HOOK制作脱壳机,定制自己的脱壳系统;DexClassLoader动态加载分析,DEX自解析重构技术;三代梆梆加固原理分析;爱加密加固原理分析;360加固与脱壳机,360加固VM与置换表;辅助脱壳机,IDA动态调式脱爱加密壳;IDA动态调式脱360壳,IDA动态调式脱SO壳;脱360壳-dex2oat,脱360壳-drizzleDumper;百度加固DD大法,百度加固VM与置换表;阿里加固与脱壳机,腾讯乐固;ARSC资源保护与注解;脱壳神器ZjDroid:捕鱼达3加固技术总结;


Android のシェルリングとアンチシェルリングの分析:

Android脱壳中的思路,技巧elf结构详解:动态运行库so文件的文件组成结构elf结构详解:加载so文件的流程elf文件变形与保护,elf文件修复分析,so加壳文件修复常用调试检测方法与过检测方法Android源码定制添加反反调试机制Android dvm 脱壳,Dalvik dex处理分析IDA脱壳脚本编写,Odex修复方法,IDAOdex修复脚本编写


高度な知識の要約と企業レベルの実践 (逆の進行):

病毒分析与脱壳学习,用Ransomware类和木马类进行学习;手动脱壳《王者X耀》练习;从0开始打造自己的破解代码库;


第 3 段階:
Android の脆弱性分析とマイニング:

学习常见的漏洞类型和原理。例如堆溢出,栈溢出,UAF等,可以参考漏洞分析相关书籍;关注Android Security Bulletin,根据提供的diff分析漏洞成因;学习并调试以前的经典漏洞;学习漏洞挖掘fuzzing思路,参考书籍推荐《Android安全XXXX》;病毒分析与病毒脱壳实战;


Android仮想マシン技術、システムソースコード解析、フラッシュメカニズムの紹介、ROMフラッシュパッケージの作成:

ASP代码注入式写法;Android 免root进行hook;Android虚拟机原理,Android多开原理讲解;在apk内部写一个虚拟机,在apk内安装apk;虚拟机适配Android 10和64位系统;从0开始开发自己的虚拟机库;最完善的刷机工具 :魔趣 ROM;最完善的刷机工具 :Devices - TWRP;


大規模なエンタープライズレベルのプロジェクトの実践 (5 つのプロジェクト):

  • わずかに……

三つ。セキュリティの研究開発

研究開発職は、他の 2 つの分野よりもプログラミング テクノロジに重点を置き、主に防御セキュリティ製品と攻撃セキュリティ ツールに焦点を当てています。

ここにいくつかの製品があります

防火墙、IDS、IPSWAF(Web网站应用防火墙)数据库网关NTA(网络流量分析)SIEM(安全事件分析中心、态势感知)大数据安全分析EDR(终端设备上的安全软件)DLP(数据泄漏防护)杀毒软件安全检测沙箱

これらの製品の開発は主に C/C++、Java、Python の 3 つの主要言語に基づいており、少量の GoLang と Rust が含まれています。

ネットワークセキュリティルート統合バックグラウンド応答[セキュリティマップ]

 

おすすめ

転載: blog.csdn.net/hdwlwang/article/details/130487526