ከ Red Teaming ስነ-ምግባር እስከ Cryptography መሰረታዊ ነገሮች ድረስ ያለውን ሙሉ Phase 1 በአንድ ገጽ ላይ አጠናቅረንላችኋል።
ከላይ ባለው navigation ወደ ፈለጋችሁት ትምህርት በቀጥታ መሄድ ትችላላችሁ፤
Live Terminal ደግሞ ለስድስቱም ትምህርቶች የሚያገለግል አንድ እውነተኛ Linux VM ብቻ ነው (ከዚህ በታች ይገኛል)።
ይሄ እውነተኛ Linux ነው፦ ሙሉ በሙሉ በ browser ውስጥ (WebAssembly) የሚሰራ real busybox system ሲሆን ምንም server አያስፈልገውም። እያንዳንዱ ትምህርት ከታች የራሱን የልምምድ ትዕዛዞች ይሰጣችኋል፤ ወደዚህ ተመልሳችሁ ሞክሯቸው።
curl/wget እውነተኛ HTTP(S) request በ browser fetch layer በኩል ይልካሉ፤ ግን ድህረ ገጹ CORS ካልፈቀደ ጥያቄው ላይሳካ ይችላል (ይህ የ browser የደህንነት ገደብ ነው)። ping ግን ICMP ስለሆነ በ browser ውስጥ ፈጽሞ አይሰራም። ሙሉ port scanning እና exploitation ደግሞ በ browser ውስጥ ፈጽሞ አይቻልም።
ስልክ ላይ ብቻ የምትማሩ ከሆነ፦ ይህ Live Terminal በ WebAssembly ስለሚሰራ በማንኛውም ስልክ (arm64-v8a ወይም armeabi-v7a) ላይ ያለ ምንም ችግር ይከፈታል። ኢንተርኔታችሁ ቀርፋፋ ከሆነ ወይም በ Telegram ውስጥ ባለው browser ከከፈታችሁት ግን ሊዘገይ ይችላል፤ እንዲህ ከሆነ በ Chrome ወይም በሌላ browser ክፈቱት። ሙሉ Linux በስልካችሁ ላይ ተጭኖ እንዲኖራችሁ ከፈለጋችሁ ደግሞ Termux የሚባል ነጻ Android app መጠቀም ትችላላችሁ፦
"Termux APK download" ብሎ Google ላይ መፈለግ # → አብዛኞቹ ውጤቶች ይፋዊ ያልሆኑና malware ያለባቸው ናቸው
source = "f-droid.org ብቻ" # → architecture በራስ-ሰር ይመረጣል
የደህንነት ማስታወሻ (ይህ ራሱ የ Red Team ትምህርት ነው!)፦ የ Termux ገንቢዎች ራሳቸው የሚመክሩት ምንጭ F-Droid ብቻ ነው (f-droid.org/packages/com.termux)። GitHub ላይ "Termux APK" ተብለው የሚሰራጩ ብዙ ገጾች ይፋዊ ያልሆኑና አደገኛ ስለሆኑ ከእነሱ ፈጽሞ አታውርዱ። በ Play Store ላይ ያለው Termux ደግሞ ለብዙ ዓመታት አልተዘመነም። F-Droid app ከጫናችሁ በኋላ Termux ን ፈልጋችሁ ስትጭኑት፣ ለስልካችሁ የሚስማማውን architecture (arm64-v8a/armeabi-v7a) በራሱ ይመርጣል፤ እናንተ መምረጥ አያስፈልጋችሁም።
Red Team ምን እንደሆነ፣ ከ Blue Team እና ከ Purple Team እንዴት እንደሚለይ ትማራላችሁ፤
ከሁሉም በላይ ደግሞ መሳሪያም ሆነ ቴክኒክ ከመማራችሁ በፊት ስነ-ምግባርና ህጋዊ ፈቃድ (authorization) ለምን የ Red Teaming የመጀመሪያውና ብቸኛው መሰረት እንደሆኑ በደንብ ይገባችኋል፤
ከላይ ባለው Live Terminal ላይ ደግሞ ጥቂት ትዕዛዞችን ራሳችሁ ትሞክራላችሁ!
Red Team ማለት አንድ ድርጅት የደህንነት ስርዓቱ ምን ያህል ጠንካራ እንደሆነ እንዲያውቅ፣ በጽሑፍ በተፈቀደና ሙሉ በሙሉ ህጋዊ በሆነ መንገድ እውነተኛ አጥቂ (attacker) መስሎ የሚፈትሽ የባለሙያዎች ቡድን ነው። ይሄ ለምን ያስፈልጋል? "ደህንነታችን ጠንካራ ነው" ብሎ ማመንና በተግባር ማረጋገጥ ሁለት የተለያዩ ነገሮች ናቸው፤ ይህንን ክፍተት የሚሞላው Red Team ነው። ዓላማውም ድክመት ማግኘት ብቻ አይደለም፤ ድርጅቱ ጥቃትን እንዴት ለይቶ እንደሚያውቅና (detect) ምላሽ እንደሚሰጥ (respond) መፈተሽም ጭምር ነው።
# በ Security ውስጥ ያሉ ዋና ዋና ቡድኖች RED TEAM → አጥቂ ቡድን (Offense) # ድክመት ፍለጋ፣ ጥቃት አስመስሎ መሞከር BLUE TEAM → ተከላካይ ቡድን (Defense) # SOC (የደህንነት ቁጥጥር ማዕከል)፣ Monitoring (ክትትል)፣ Incident Response (ለጥቃት ምላሽ መስጠት) PURPLE TEAM → በጋራ የሚሰሩ ቀይና ሰማያዊ ቡድኖች # እውቀት መለዋወጥ፣ አብሮ ማጠናከር
Red Team ከ ወንጀለኛ ጠላፊ (criminal hacker) የሚለየው በአንድ ወሳኝ ነገር ብቻ ነው፦ ፈቃድ (authorization)። ሁለቱም ተመሳሳይ ክህሎት ቢጠቀሙም ዓላማቸው፣ ወሰናቸውና ህጋዊነታቸው ፈጽሞ የተለያዩ ናቸው።
ማንኛውም ወንጀለኛ ጠላፊ በስርዓታችሁ ላይ ጥቃት ከመሰንዘሩ በፊት የራሳችሁ ቡድን ቀድሞ ያንኑ ጥቃት ቢሞክር ይሻላል። ድርጅቶች Red Team የሚቀጥሩት ገንዘባቸውን፣ መረጃቸውንና መልካም ስማቸውን (reputation) ጉዳት ከመድረሱ በፊት ለመጠበቅ ነው። ፍተሻው በተለያዩ ዘርፎች ሊካሄድ ይችላል፦
NETWORK → Servers, Firewalls, VPN WEB APPS → Websites, APIs, Login Systems PEOPLE → Social Engineering, Phishing PHYSICAL → Badge Access, Office Security # ማስታወሻ፦ የትኛው ዘርፍ እንደሚፈተሽ # ሁልጊዜ ከደንበኛው ጋር አስቀድሞ ይወሰናል
Red Team engagement ሁልጊዜ የጊዜ ገደብ (timeframe) እና ወሰን (scope) አለው፤ የሚጀምረውም የደንበኛው አመራር ተስማምቶ በጽሑፍ ከፈረመ በኋላ ብቻ ነው።
ከዚህ ትምህርት አንድ ነገር ብቻ ይዛችሁ የምትወጡ ከሆነ፣ ይህ ይሁን፦ በጽሑፍ የተፈረመ ፈቃድ (Rules of Engagement) ከሌላችሁ ማንኛውንም ስርዓት መሞከር በአብዛኞቹ አገሮች ወንጀል ነው፤ ዓላማችሁ "ጥሩ" ቢሆንም እንኳ። "እየረዳሁ ነው" ብትሉም ህጋዊ ጥበቃ አታገኙም። ROE ቢያንስ የሚከተሉትን መያዝ አለበት፦
# Rules of Engagement (ROE)፦ ናሙና ዝርዝር CLIENT → Habesha Bank S.C. SCOPE → app.habeshabank.com ብቻ OUT-OF-SCOPE → ሌላ ማንኛውም ስርዓት፦ አትንኩ WINDOW → Sept 10 – Sept 24, 2026 CONTACT → emergency-line: +251-9xx-xxxxxx SIGNED BY → CTO + Legal Dept. # ROE ከሌለ ስራ አይጀመርም፤ በዚህ ጉዳይ ድርድር የለም።
"ጥሩ ዓላማ ነበረኝ" ብቻ ROE = None # → ወንጀል ነው፤ ለእስር ሊዳርግ ይችላል
ROE = "ተፈርሟል ✓" scope = "በግልጽ ተቀምጧል" # → ህጋዊ፣ ሙያዊ Red Teaming
ከ Scope creep (ከተፈቀደው ወሰን ቀስ በቀስ መውጣት) ተጠንቀቁ፦ በስራ ላይ እያላችሁ ከ scope ውጪ የሆነ ተጋላጭነት ካገኛችሁ ወዲያውኑ አቁሙ፣ መዝግቡት፣ ለደንበኛውም አሳውቁ። በዚያ ላይ በጭራሽ አትቀጥሉ፤ ተጨማሪ ፍተሻም አታድርጉ።
ሞክሩ፦ ls / · whoami · cat /etc/os-release · curl -s http://example.com
1. የ Red Team ዋና ዓላማ ምንድን ነው?
አንድ ብቻ ምረጡ
2. በጽሑፍ የተሰጠ ፈቃድ (written authorization) ሳይኖር ስርዓት መሞከር ምን ያስከትላል?
አንድ ብቻ ምረጡ
3. ከ scope ውጪ የሆነ ተጋላጭነት (vulnerability) ካገኛችሁ ትክክለኛው እርምጃ ምንድን ነው?
አንድ ብቻ ምረጡ
🎉 P1·L01 ጨርሳችኋል!
Red Team ምን እንደሆነ፣ ከ Blue Team እና ከ Purple Team እንዴት እንደሚለይ፣ ድርጅቶች ለምን Red Team እንደሚያስፈልጋቸው፣ ከሁሉም በላይ ደግሞ በጽሑፍ የተሰጠ ፈቃድ (ROE) ሳይኖር መስራት ወንጀል መሆኑን ተምራችኋል። በቀጣዩ ትምህርት ህጋዊውን ማዕቀፍና Rules of Engagement በጥልቀት ትማራላችሁ።
ROE በትክክል ምን ምን ክፍሎች መያዝ እንዳለበት በጥልቀት ትማራላችሁ፤
ስለ ዓለም አቀፍ cybercrime ህጎችና ስለ ኢትዮጵያ Computer Crime Proclamation No. 958/2016 ትማራላችሁ፤ "Get Out of Jail Free" letter ምን እንደሆነም ታውቃላችሁ፤
ከላይ ባለው Live Terminal ውስጥ ደግሞ ራሳችሁ በትዕዛዝ መስመር (CLI) መስራትን ትለማመዳላችሁ!
ROE ስድስት መስመር ብቻ የያዘ ማስታወሻ አይደለም፤ ሙሉ ህጋዊ ውል ነው። እያንዳንዱ ክፍል የራሱ ምክንያት አለው፤ አንዱ ቢጎድል ስራው በሙሉ ለአደጋ ይጋለጣል። ለምሳሌ በ ROE ውስጥ የ "TECHNIQUES" ክፍል ባይኖርና እናንተ DoS attack ብትሞክሩ፣ የደንበኛው ስርዓት ቢቆምና ገንዘብ ቢያጣ ተጠያቂ የምትሆኑት እናንተ ናችሁ፤ ምክንያቱም ROE ግልጽ አልነበረም። ስለዚህ በሙያ የተዘጋጀ ROE ቢያንስ ስምንት ክፍሎች ይኖሩታል፦
SCOPE → በትክክል የትኞቹ IP/domain ይፈተናሉ OUT-OF-SCOPE → በግልጽ የተከለከሉ ስርዓቶች WINDOW → የሚጀምርበትና የሚያልቅበት ቀንና ሰዓት TECHNIQUES → የትኞቹ ዘዴዎች ይፈቀዳሉ? (DoS ብዙውን ጊዜ አይፈቀድም!) POC → Point of Contact፦ ቴክኒካል ተጠሪና emergency contact DATA HANDLING → የተገኘ sensitive data እንዴት ይያዛል LIABILITY → በ scope ውስጥ ለሚደርስ ጉዳት ጥበቃ SIGN-OFF → ህጋዊ ስልጣን ባለው ሰው ፊርማ ብቻ!
የተለመደ አደገኛ ስህተት፦ ROE ን ማንኛውም ሰራተኛ ቢፈርመው በቂ አይደለም፤ ማጽደቅ የሚችለው ህጋዊ ስልጣን ያለው ሰው (CTO፣ CISO፣ Legal Dept.) ብቻ ነው። ያለዚያ ፊርማው ህጋዊ ውጤት አይኖረውም።
ከሞላ ጎደል እያንዳንዱ አገር ያለ ፈቃድ ወደ computer system መግባትን የሚከለክል ህግ አለው። "ፈቃድ" የሌለው ማንኛውም testing ዓላማው ምንም ይሁን ምን በእነዚህ ህጎች መሰረት ወንጀል ሊሆን ይችላል፦
🇺🇸 USA → Computer Fraud & Abuse Act (CFAA), 1986 🇬🇧 UK → Computer Misuse Act, 1990 🇪🇹 ETHIOPIA → Computer Crime Proclamation No. 958/2016 # የኢትዮጵያ ህግ፦ ያለ ፈቃድ ወደ ስርዓት መግባትን፣ # data ማበላሸትንና cyber fraud ን ይከለክላል። # Federal Police እና INSA ተግባራዊነቱን ይከታተላሉ
ኢትዮጵያ ውስጥ የምትሰሩ ከሆነ Computer Crime Proclamation No. 958/2016 በቀጥታ ይመለከታችኋል። "ጥሩ ዓላማ ነበረኝ" ማለት ፍርድ ቤት ፊት አያድናችሁም፤ ህጋዊ ጥበቃ የሚሰጣችሁ የተፈረመ ROE ብቻ ነው።
ይህ ደንበኛው የሚፈርምላችሁ ተጨማሪ ደብዳቤ ነው። ስራ ላይ እያላችሁ (በተለይ physical penetration test ላይ) ፖሊስ ወይም የጥበቃ ሰራተኛ ቢያገኛችሁ ወዲያውኑ የምታሳዩት ማስረጃ ይህ ደብዳቤ ነው። ROE ጠቅላላው ውል ሲሆን፣ ይህ ደብዳቤ ደግሞ በኪሳችሁ ወይም በስልካችሁ ይዛችሁ የምትንቀሳቀሱበት አጭር ማረጋገጫ ነው።
# Authorization Letter፦ ናሙና TO WHOM IT MAY CONCERN ይህን ደብዳቤ የያዘው ሰው በ Habesha Bank S.C. ፈቃድ የደህንነት ፍተሻ (penetration test) እያከናወነ ነው (Sept 10–24, 2026)። 24/7 CONTACT → CISO: +251-9xx-xxxxxx SIGNED → [ስም], Chief Information Security Officer
"ROE አለኝ" ብቻ ብላችሁ proof = None # → ፖሊስ ቢጠይቅ ማረጋገጥ አትችሉም
letter = "በስልክ እና በወረቀት (printed copy)" # → ወዲያውኑ ማረጋገጥ ይቻላል
STOP-work (ስራ ማቆም የሚያስፈልግባቸው) ሁኔታዎች፦ በ critical system ላይ ያልተጠበቀ ጉዳት ከደረሰ፣ ከ scope ውጪ የሆነ ነገር ካገኛችሁ፣ ወይም የህግ አስከባሪ አካል ቢያገኛችሁ ወዲያውኑ ስራ አቁሙ፤ ለ emergency contact ደውሉ። ማቆም ራሱ ሙያዊነት ነው።
ሞክሩ፦ ls / · whoami · cat /etc/os-release · curl -s http://example.com
1. በ ROE ውስጥ "TECHNIQUES" ክፍል ለምን አስፈላጊ ነው?
አንድ ብቻ ምረጡ
2. የኢትዮጵያ Computer Crime Proclamation ቁጥር ስንት ነው?
አንድ ብቻ ምረጡ
3. የ "Get Out of Jail Free Letter" ዋና ዓላማ ምንድን ነው?
አንድ ብቻ ምረጡ
🎉 P1·L02 ጨርሳችኋል!
ስለ ROE ስምንቱ ክፍሎች፣ ስለ ዓለም አቀፍ cybercrime ህጎችና ስለ ኢትዮጵያ Computer Crime Proclamation No. 958/2016 ተምራችኋል፤ Get Out of Jail Free Letter ምን እንደሆነም አውቃችኋል። በቀጣዩ ትምህርት Networking Fundamentals፦ TCP/IP, Ports, OSI Model ትማራላችሁ።
OSI Model ሰባቱ layers እና TCP/IP እንዴት እንደሚሰሩ ትማራላችሁ፤
Public እና Private IP አድራሻዎችን፣ እንዲሁም በጣም አስፈላጊ የሆኑትን ports & protocols (SSH, HTTP, RDP, SMB...) ታውቃላችሁ፤
ያለ networking እውቀት በ Scanning phase ላይ የምታዩት ውጤት ምንም አይገባችሁም። ከላይ ባለው Live Terminal ውስጥ ደግሞ real network commands ትለማመዳላችሁ!
ማንኛውም network traffic ሰባት layers ውስጥ ያልፋል። ልክ ደብዳቤ እንደመላክ አድርጋችሁ አስቡት፦ መልዕክቱን (data) ወረቀት ላይ ትጽፋላችሁ፣ ኤንቨሎፕ ውስጥ ትከቱታላችሁ፣ አድራሻ ትጽፋላችሁ፣ ፖስታ ቤት ደግሞ ይወስደዋል። እያንዳንዱ layer የራሱ "ኤንቨሎፕ" አለው። እያንዳንዱ የ Red Team ቴክኒክ (scanning, sniffing, exploitation) የሚያተኩረው የራሱ በሆነ layer ላይ ነው፤ layers ን ካላወቃችሁ የትኛው tool የትኛውን ችግር እንደሚፈታ መለየት አትችሉም፦
L7 Application → HTTP, DNS, FTP (SQLi/XSS እዚህ) L6 Presentation → Encryption, SSL/TLS L5 Session → Session ማቋቋሚያ (hijacking risk) L4 Transport → TCP/UDP (port scanning እዚህ) L3 Network → IP routing (IP spoofing) L2 Data Link → MAC, switches (ARP spoofing) L1 Physical → ገመድ፣ WiFi፣ physical access
አብዛኛው የ Red Team ስራ (Phase 2-4) የሚያተኩረው በ L3 (Network)፣ L4 (Transport) እና L7 (Application) ላይ ነው፤ Nmap የሚሰራው በ L3/L4 ላይ ሲሆን፣ Burp Suite ደግሞ በ L7 ላይ ነው።
OSI ንድፈ-ሀሳብ ነው፤ TCP/IP ግን በተግባር internet ላይ የሚሰራው (አራት layers ብቻ ያሉት) ነው። እያንዳንዱ device ልዩ IP አድራሻ አለው፤ አንዳንዶቹ "private" (በውስጣዊ network ውስጥ ብቻ የሚታዩ) ሲሆኑ ሌሎቹ ደግሞ "public" (ከየትኛውም ቦታ የሚታዩ) ናቸው፦
# Private IP ranges (RFC 1918)፦ በ internet ላይ አይታዩም 10.0.0.0 – 10.255.255.255 (Class A) 172.16.0.0 – 172.31.255.255 (Class B) 192.168.0.0 – 192.168.255.255 (Class C) # Public IP፦ በ internet ላይ ከየትኛውም ቦታ ይታያል 8.8.8.8 → Google DNS (ምሳሌ)
አንድ ድርጅት ውስጥ ገብታችሁ (post-exploitation) private IP ካገኛችሁ internal network ውስጥ ናችሁ ማለት ነው። ይሄ ለ Phase 5 (Lateral Movement፣ ማለትም በ network ውስጥ ከአንድ ማሽን ወደ ሌላው መሸጋገር) በጣም ወሳኝ concept ነው።
Port ማለት በአንድ device ላይ የሚሰሩ የተለያዩ አገልግሎቶችን (services) ለመለየት የሚያገለግል ቁጥር ነው (0-65535)። Nmap scan "ክፍት port" ካሳያችሁ ያ አገልግሎት እየሰራ ነው ማለት ነው። ከዚህ በታች በጣም የተለመዱት ተዘርዝረዋል፦
21 FTP File Transfer (encrypted አይደለም ⚠️) 22 SSH Secure Remote Login 23 TELNET Remote Login (encrypted አይደለም ⚠️) 25 SMTP Email መላኪያ 53 DNS Domain Name Resolution 80 HTTP Web (encrypted አይደለም) 443 HTTPS Web (encrypted) 445 SMB Windows File Sharing 3306 MySQL Database 3389 RDP Windows Remote Desktop
ክፍት port በራሱ ተጋላጭነት አይደለም፤ ሆኖም Telnet (23) ወይም FTP (21) ያለ encryption ክፍት ሆኖ ካገኛችሁት ያ ራሱ በ report ውስጥ መጠቀስ ያለበት finding ነው (credentials በ plaintext ስለሚላኩ)።
ሞክሩ፦ ip addr · ifconfig · cat /etc/hosts · curl -s http://example.com፤ በዚህ ትምህርት የተማራችሁትን IP addressing concept በ VM interface ላይ ራሳችሁ ተመልከቱ!
1. OSI Model ስንት layers አሉት?
አንድ ብቻ ምረጡ
2. የትኛው port ለ HTTPS (encrypted web) ጥቅም ላይ ይውላል?
አንድ ብቻ ምረጡ
3. እንደ 192.168.x.x ያሉ IP አድራሻዎች ምን ይባላሉ?
አንድ ብቻ ምረጡ
🎉 P1·L03 ጨርሳችኋል!
ስለ OSI Model ሰባቱ layers፣ ስለ TCP/IP፣ ስለ Public እና Private IP addressing እንዲሁም በጣም አስፈላጊ ስለሆኑት ports & protocols (SSH, HTTP, RDP, SMB...) ተምራችኋል። በቀጣዩ ትምህርት Linux & Command Line Mastery፦ Kali Linux ትማራላችሁ።
ለምን Kali Linux የ Red Teaming መደበኛ OS እንደሆነ ትማራላችሁ፤
በየቀኑ የምትጠቀሙባቸውን essential commands (ls, cd, grep, find, chmod...) በደንብ ትማራላችሁ፤ file permissions (rwx) እንዴት እንደሚሰሩም ይገባችኋል፤
ከላይ ባለው Live Terminal ውስጥ በእውነተኛ Linux ላይ ራሳችሁ ትለማመዳላችሁ!
ከሞላ ጎደል ሁሉም professional security tools (Nmap, Metasploit, Burp Suite, Wireshark...) Linux-native ናቸው። ለምን Linux? ምክንያቱም እነዚህ tools ብዙ ጊዜ raw network access ወይም kernel-level control ይፈልጋሉ፤ Linux ይህንን በቀላሉ ይፈቅዳል፣ በ Windows ላይ ግን ብዙዎቹ በተገደበ መንገድ ነው የሚሰሩት። Kali Linux ደግሞ ቀድሞ የተጫኑ ከ600 በላይ security tools ያሉት Debian-based distro ሲሆን፣ የ Red Team መደበኛ OS ነው፦
PRE-INSTALLED → 600+ security tools ready FREE → ሙሉ በሙሉ ነጻና open-source CUSTOMIZABLE → በ VM፣ በ live-boot እና በ ARM (Raspberry Pi) ላይ ይሰራል COMMUNITY → በ Offensive Security የሚደገፍ፣ ብዙ documentation ያለው
Kali "ለ hacking የተሰራ" ቢመስልም በራሱ ምንም አያደርግም፤ እናንተ የምትጠቀሙበት tool ብቻ ነው። ያንኑ Kali Blue Team ተከላካዮችም የራሳቸውን ስርዓት ለመፈተሽ ይጠቀሙበታል።
Kali GUI ቢኖረውም ባለሙያዎች ስራቸውን 90 በመቶ ያህል የሚሰሩት terminal ውስጥ ነው። እነዚህን commands ካላወቃችሁ የማንኛውም tool manual ስታነቡ ትደናገራላችሁ፦
# Navigation pwd → የት እንዳላችሁ አሳዩ ls -la → ሁሉንም ፋይል (hidden ፋይሎችን ጨምሮ) ዘርዝሩ cd <dir> → directory ቀይሩ # File operations cat / less → ፋይል አንብቡ cp / mv / rm → ቅዱ / አንቀሳቅሱ / ሰርዙ mkdir → አዲስ folder ፍጠሩ # Search & filter (በጣም ወሳኝ!) grep "text" file → ፋይል ውስጥ text ፈልጉ find / -name "x" → "x" የተባለ ፋይል በሁሉም ቦታ ፈልጉ # System/process inspection (security-relevant) ps aux → ሁሉንም running processes ዘርዝሩ ss -tulpn → ክፍት ports እና እያንዳንዳቸውን የሚይዘውን process አሳዩ
እውነተኛ ኃይላቸው pipe (|) ስትጠቀሙ ነው የሚታየው፤ pipe የአንድ command output ወደ ሌላ command ያስተላልፋል፦
# scan output ውስጥ ያሉ ክፍት ports መቁጠር (ከ Phase 3 ጀምሮ ትጠቀሙበታላችሁ) cat scan.txt | grep open | wc -l # running processes ውስጥ አንድ የተወሰነ ስም መፈለግ ps aux | grep apache # ports ን በ number ደርድሮ ማየት ss -tulpn | sort -n
grep ከ Nmap ወይም ከ log output ጋር በ pipe ስታጣምሩት እጅግ ኃይለኛ ይሆናል፤ ለምሳሌ nmap ... | grep open። wc -l ደግሞ መስመሮች ስንት እንደሆኑ ይቆጥራል። ሁለቱንም በ Phase 3 እና በ CTF ልምምዶች ላይ በስፋት ትጠቀሙባቸዋላችሁ።
እያንዳንዱ Linux ፋይል ሦስት ዓይነት ፈቃዶች (permissions) አሉት፦ read፣ write እና execute። እነዚህ ፈቃዶች ለሦስት groups (owner, group, others) ለየብቻ ይሰጣሉ። ይሄ concept ለ Privilege Escalation (ከዝቅተኛ የተጠቃሚ ስልጣን ወደ ከፍተኛ ስልጣን መውጣት፤ Phase 5) መሰረት ነው፦
# ls -la ውጤት ምሳሌ -rwxr-xr-- 1 root root secret_script.sh # ትርጉሙ፦ rwx → owner (root): read+write+execute r-x → group: read+execute ብቻ r-- → others: read ብቻ # Numeric (chmod 754 file.sh) r=4, w=2, x=1 → 7=rwx, 5=r-x, 4=r--
ከ Red Team አንጻር፦ በተሳሳተ መንገድ የተዋቀረ permission (ለምሳሌ chmod 777 ወይም SUID bit (ፋይሉ በባለቤቱ ስልጣን እንዲሰራ የሚያደርግ ምልክት) ያለው ፋይል) ለ privilege escalation ትልቅ በር ይከፍታል። ይህንን በ Phase 5 በጥልቀት ታያላችሁ።
ዛሬ የተማራችኋቸውን ትዕዛዞች ራሳችሁ ሞክሩ፦ ls -la / · pwd · cat /etc/passwd · grep root /etc/passwd
1. "hidden" ፋይሎችን ጨምሮ ሁሉንም ፋይል ለማየት የትኛውን ትዕዛዝ ትጠቀማላችሁ?
አንድ ብቻ ምረጡ
2. በፋይል ውስጥ የተወሰነ ጽሑፍ (text) ለመፈለግ የትኛውን ትዕዛዝ ትጠቀማላችሁ?
አንድ ብቻ ምረጡ
3. chmod 754 ስትሉ ለ group የተሰጠው "5" ምን ማለት ነው?
አንድ ብቻ ምረጡ
🎉 P1·L04 ጨርሳችኋል!
Kali Linux ለምን የ Red Teaming መደበኛ OS እንደሆነ፣ essential commands (ls, cd, grep, find...) እና file permissions (rwx/chmod) በጥልቀት ተምራችኋል። በቀጣዩ ትምህርት Home Lab Setup፦ VirtualBox, Vulnerable VMs ትማራላችሁ።
ለምን የራሳችሁ Lab ሙሉ በሙሉ ህጋዊ የሆነ አስተማማኝ የመለማመጃ መንገድ እንደሆነ ትማራላችሁ፤
VirtualBox እና host-only networking እንዴት isolated environment እንደሚፈጥሩ ትረዳላችሁ፤ ታዋቂ vulnerable VMs (Metasploitable2, DVWA, Juice Shop) ደግሞ ትተዋወቃላችሁ፤
ይህ Lab ከ Phase 3 (Scanning) ጀምሮ መለማመጃ ቦታችሁ ይሆናል!
እዚህ ጋር ግን ችግር አለ፦ በ P1·L01 እና L02 እንደተማራችሁት፣ ያለ ROE ማንኛውንም ስርዓት መሞከር ወንጀል ነው። ልምምድ ደግሞ ያስፈልጋችኋል፤ tools መሞከር ያስፈልጋችኋል! መፍትሄው የራሳችሁ Lab ነው፤ የእናንተው ስርዓት ስለሆነ ሙሉ በሙሉ ህጋዊ የመለማመጃ ቦታ ነው፦
LEGAL → የራሳችሁ ስርዓት ስለሆነ ROE አያስፈልግም SAFE → ብትሰብሩት እንኳ real damage የለም REPEATABLE → snapshot ወስዳችሁ ደጋግማችሁ ትሞክራላችሁ CHEAP → ነጻ tools ብቻ በቂ ናቸው
ወርቃማው ህግ (P1·L01 ን አስታውሱ)፦ "ልምምድ ነው" ማለት ያለ ፈቃድ በ real ስርዓት ላይ መሞከርን ትክክል አያደርገውም። ያለ ምንም ገደብ መለማመድ የምትችሉት በ Lab ውስጥ ብቻ ነው።
Hypervisor (VirtualBox/VMware) በ computer ውስጥ "ሌላ computer" (VM) እንድትፈጥሩ ያስችላችኋል። ዋናው ነገር ግን networking mode ነው፤ VM ከ real internet እና ከ home network መነጠል አለበት፦
VirtualBox → ነጻ፣ በ Oracle የተሰራ፣ ለጀማሪ ቀላል (የሚመከር) VMware Player → ለግል ጥቅም ነጻ፣ ትንሽ ፈጣን # Network Mode፦ ይሄ ወሳኝ ነው! NAT → VM ወደ internet መውጣት ይችላል (አደገኛ) Host-Only → VM ከ host ጋር ብቻ ይገናኛል ✅ Internal Network → VMs እርስ በርስ ብቻ ይገናኛሉ ✅✅
ሁልጊዜ "Host-Only" ወይም "Internal Network" ተጠቀሙ፤ "Bridged" ወይም "NAT" mode VM ን ከ real home network ወይም ከ internet ጋር ስለሚያገናኘው አደገኛ ነው (በተለይ vulnerable VMs ስትጭኑ)።
እነዚህ በባለሙያዎች ሆን ተብለው ተጋላጭ ተደርገው የተሰሩ VMs ናቸው፤ ለልምምድ ብቻ እንዲውሉ በህጋዊ መንገድ በነጻ ይሰራጫሉ፦
Metasploitable2 → የ Rapid7 ይፋዊ VM፣ Linux-based DVWA → Damn Vulnerable Web App OWASP Juice Shop → ዘመናዊ vulnerable web app VulnHub.com → በመቶዎች የሚቆጠሩ ነጻ vulnerable VMs
ይህን አታድርጉ፦ እነዚህ VMs ሆን ተብለው ተጋላጭ ስለሆኑ ለ real internet በጭራሽ አታጋልጧቸው (Host-only network ብቻ ተጠቀሙ)። ማንኛውም ሰው ካገኛቸው ስርዓታችሁን ሊቆጣጠር ይችላል።
በ P1·L04 የተማራችኋቸውን ትዕዛዞች ደግማችሁ ሞክሩ፦ ls -la / · pwd · cat /etc/passwd · grep root /etc/passwd
1. በራሳችሁ Lab ላይ መለማመድ ለምን ሙሉ በሙሉ ህጋዊ ነው?
አንድ ብቻ ምረጡ
2. ለ Lab VM የትኛው network mode ትክክለኛ ነው?
አንድ ብቻ ምረጡ
3. Metasploitable2 ምንድን ነው?
አንድ ብቻ ምረጡ
🎉 P1·L05 ጨርሳችኋል!
የራሳችሁ Lab ለምን ሙሉ በሙሉ ህጋዊ የመለማመጃ ቦታ እንደሆነ፣ VirtualBox እና host-only networking እንዴት እንደሚሰሩ፣ እንዲሁም ታዋቂ vulnerable VMs (Metasploitable2, DVWA, Juice Shop) ምን እንደሆኑ ተምራችኋል። በቀጣዩ ትምህርት Cryptography Basics for Security ትማራላችሁ፤ ይህም Phase 1 ን ያጠናቅቃል!
በ Encoding፣ Encryption እና Hashing መካከል ያለውን ልዩነት (ብዙ ሰዎች የሚያምታቱትን!) ትረዳላችሁ፤
Symmetric vs Asymmetric encryption ምን እንደሆኑ፣ እንዲሁም passwords እንዴት hash ተደርገው እንደሚቀመጡ ትማራላችሁ፤
ይህ የ Phase 1 (Foundations) የመጨረሻ ትምህርት ነው! ከላይ ባለው Live Terminal ውስጥ ደግሞ real hashing ራሳችሁ ትሞክራላችሁ።
እነዚህ ሦስቱ ብዙ ጊዜ ይምታታሉ፣ ግን ፈጽሞ የተለያዩ ናቸው። ለምሳሌ ብዙ ጀማሪ ፕሮግራመሮች Base64 ተጠቅመው password "ደብቀናል" ብለው ያምናሉ፤ በእውነቱ ግን ማንም ሰው በአስር ሰከንድ ውስጥ decode ማድረግ ይችላል። ልዩነታቸውን ካላወቃችሁ በ security ውስጥ ትልቅ ስህተት ትሰራላችሁ፦
ENCODING → Base64፦ ቁልፍ አያስፈልገውም፣ ምንም ጥበቃ አይሰጥም ENCRYPTION → AES/RSA፦ ቁልፍ ያስፈልገዋል፣ ሊቀለበስ ይችላል HASHING → SHA-256፦ በአንድ አቅጣጫ ብቻ የሚሄድ፣ ፈጽሞ አይቀለበስም
የተለመደ ስህተት፦ Base64 (aGVsbG8=) "encrypted" ይመስላል፣ ግን ቁልፍ ሳያስፈልግ ማንኛውም online tool ወዲያውኑ ይፈታዋል። ምንም ጥበቃ አይሰጥም፤ format conversion ብቻ ነው።
Encryption ሁለት ዋና ዓይነት አለው። HTTPS (P1·L03 ን አስታውሱ፤ L6 Presentation layer) ደግሞ ሁለቱንም አብሮ ይጠቀማል፦
SYMMETRIC (AES) → አንድ ቁልፍ ለ encrypt እና decrypt፣ ፈጣን ASYMMETRIC (RSA) → Public እና Private ቁልፍ ጥንድ፣ ቀርፋፋ # HTTPS Handshake እንዴት ይሰራል፦ 1. client እና server በ Asymmetric ቁልፍ ይለዋወጣሉ 2. ከዚያ real data የሚላከው በ Symmetric ነው
Asymmetric ለ key exchange ብቻ የሚያገለግለው ለምንድን ነው? ምክንያቱም ቀርፋፋ ስለሆነ ነው፤ ትልልቅ data ሁሉ በ Asymmetric encrypt ቢደረግ website loading እጅግ ይዘገይ ነበር።
በሙያ የተሰራ ስርዓት password ን በ plaintext በጭራሽ አያከማችም፤ በምትኩ hash ያደርገዋል። Hash አንድ አቅጣጫ ብቻ ስለሆነ password ቢሰረቅ እንኳ በቀጥታ ሊነበብ አይችልም፦
MD5 → 128-bit፦ ተሰብሯል፣ ፈጽሞ አትጠቀሙበት ❌ SHA-256 → 256-bit፦ አሁንም secure እንደሆነ ይታሰባል bcrypt → ለ password ተብሎ የተሰራ፣ ሆን ተብሎ ቀርፋፋ
Salting ለምን አስፈላጊ ነው፦ ተመሳሳይ password ሁልጊዜ ተመሳሳይ hash ይሰጣል። ስለዚህ አጥቂዎች precomputed (አስቀድሞ የተሰላ) "rainbow table" ይጠቀማሉ። Salt (በዘፈቀደ የሚመረጥ ተጨማሪ data) ከ password ጋር ሲጨመር እያንዳንዱን hash ልዩ ያደርገዋል።
real hashing ራሳችሁ ሞክሩ፦ echo -n "password123" | md5sum · echo -n "password123" | sha256sum፤ ተመሳሳይ ግብዓት ሁልጊዜ ተመሳሳይ hash እንደሚሰጥ ራሳችሁ ተመልከቱ!
1. Base64 ምንድን ነው?
አንድ ብቻ ምረጡ
2. የትኛው statement ስለ Hashing ትክክል ነው?
አንድ ብቻ ምረጡ
3. HTTPS ለምን ሁለቱንም Symmetric እና Asymmetric encryption ይጠቀማል?
አንድ ብቻ ምረጡ