Jifunze muundo wa kawaida wa malware (obfuscation, web shells, backdoors, hidden iframes na base64
π Tovuti: https://www.faulink.com
π WhatsApp: https://wa.me/255693118509
Common Malware Patterns (maelezo)
Base64 / obfuscation
base64_decode(...), gzinflate(), str_rot13, pack() matumizi ya mfululizo ku-ficha payload.
Pattern: eval(base64_decode('...')) au eval(gzinflate(base64_decode('...'))).
Eval / create_function / preg_replace / assert
eval() inaweza kutekeleza PHP arbitrary; preg_replace('/.../e',...) pia ilikuwa inafanya eval.
Pattern: preg_replace('/.*/e',...), assert($_POST['x']);.
System / shell execution functions
exec(), shell_exec(), system(), passthru(), proc_open(), popen() β kutekeleza amri za OS.
Web shells / backdoors
Mafaili yanayoanzisha listener au kupokea commands via HTTP (POST/GET). Mara nyingi yana endpoints kama ?cmd=... au $_REQUEST['c'].
Pattern: use of $_REQUEST with system/exec/eval, base64_decode + eval.
Hidden iframes / malicious redirects
<iframe style="display:none" src="..."> au window.location='...' kwa JS, redirects kwa visitors.
Encoded long strings / character arrays
Msururu wa herufi zisizo za kawaida, au concatenated strings (chr(101).chr(118).chr(97)), au hex encoded payloads.
Unexpected file permissions / cron jobs
Files with 777, or strange cronjobs added ku-execute scripts periodically.
Modified timestamps & new unknown files
Files created/modified bila deploy process; au files katika directories zisizotarajiwa (uploads/*.php).
Network patterns: unusual outbound connections
Server inatuma traffic kwa IPs/in domains zisizojulikana β exfiltration.
Obfuscated PHP comments / whitespace trickery
Code yenye comments za kuziruhusu wafanyiwe ignore, au long lines with encoded payloads.
Quick detection commands (Linux) β defensive, run on your own server
Kumbuka: run hizi kama user mwenye access kwenye seva yako tu.
1) Tafuta base64 / eval / gzinflate kwenye PHP files
grep -R --include="*.php" -nE "base64_decode|gzinflate|eval\(|preg_replace\(.+,.*e.*\)|assert\(" /var/www/html/
2) Tafuta functions za system execution
grep -R --include="*.php" -nE "shell_exec|exec\(|system\(|passthru|proc_open|popen" /var/www/html/
3) Tafuta web shells (requests to cmd)
grep -R --include="*.php" -nE "\$_(GET|POST|REQUEST)\[.*\].*(exec|shell_exec|system|eval)" /var/www/html/
4) Tafuta hidden iframes / suspicious JS in HTML
grep -R --include="*.html" --include="*.php" -nE "<iframe[^>]*style=['\"]?display:none|window\.location|document\.write" /var/www/html/
5) Tafuta faili zenye permission 777
find /var/www/html -type f -perm 0777 -ls
6) Tafuta files mpya/modified ndani ya siku N
# files modified in last 7 days
find /var/www/html -type f -mtime -7 -ls
7) Scan kwa ClamAV / Maldet
sudo apt update
sudo apt install -y clamav
sudo freshclam
sudo clamscan -r --bell -i /var/www/html/
# Linux Malware Detect (Maldet)
sudo apt install -y maldet
sudo maldet -a /var/www/html/
Small PHP scanner (copy-paste) β defensive use only
Hii script inatafuta keywords za hatari na inaripoti faili. Hifadhi kama scan_malware.php na i-run from command line: php scan_malware.php /var/www/html
<?php
// scan_malware.php
$dir = $argv[1] ?? __DIR__;
$dangerous = [
'base64_decode','gzinflate','eval(','preg_replace(','assert(','shell_exec(','exec(','system(','passthru(','proc_open(','popen(','create_function('
];
function scanDir($path, $dangerous) {
$it = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path));
foreach ($it as $file) {
if (!$file->isFile()) continue;
$ext = pathinfo($file->getFilename(), PATHINFO_EXTENSION);
if (!in_array($ext, ['php','inc','phtml','html','js'])) continue;
$content = file_get_contents($file->getPathname());
foreach ($dangerous as $kw) {
if (stripos($content, $kw) !== false) {
echo "β οΈ Found '$kw' in: " . $file->getPathname() . PHP_EOL;
}
}
}
}
scanDir($dir, $dangerous);
?>
Python example: create MD5 baseline & detect changes
Tumia hii ku-create baseline ya files (hashes), kisha inatumia kufuatilia mabadiliko.
# Create baseline
find /var/www/html -type f -exec md5sum {} \; > /root/baseline.md5
# Later: check for changes
md5sum -c /root/baseline.md5 | grep -v ': OK'
Au script fupi Python:
# check_changes.py
import hashlib, sys, os
basefile = sys.argv[1] # baseline file path
bad = False
with open(basefile) as f:
for line in f:
h, path = line.strip().split(' ',1)
if not os.path.exists(path):
print("MISSING:", path); bad=True; continue
with open(path,'rb') as fh:
if hashlib.md5(fh.read()).hexdigest() != h:
print("CHANGED:", path); bad=True
if not bad:
print("No changes detected.")
Remediation steps (kwa haraka)
Isolate site: set site to maintenance mode au ziime network access kwa host zenye tatizo.
Backup current state (copy logs, infected files) β preserve for forensic if needed.
Scan & identify: tumia grep/php/python/clamscan kujua extent ya infection.
Replace infected files: restore kutoka backup safi; au remove injected code manually (careful).
Rotate credentials: DB passwords, admin accounts, API keys.
Patch vulnerability: e.g., fix file upload validation, sanitize inputs, update CMS/plugins.
Harden server: disable dangerous PHP functions, set file permissions, use WAF.
Monitor: enable file integrity monitoring (AIDE/Tripwire), continous scans.
Report: if data breached, follow legal/incident response obligations.
Prevention & Best Practices
Keep PHP, CMS, frameworks, plugins up-to-date.
Use least-privileged DB users.
Disable dangerous functions in php.ini (disable_functions).
Store uploads outside web root; rename and validate files.
Use CSP, XSS protections, prepared statements (SQLi protection).
Implement Web Application Firewall (Cloudflare, ModSecurity).
Maintain regular backups stored offsite.
Use 2FA for admin accounts.
π Tovuti: https://www.faulink.com
π WhatsApp: https://wa.me/255693118509
Quick checklist (copy & paste)
Run grep -R "base64_decode|eval(" /var/www/html
Run clamscan -r /var/www/html
Check for uploads/*.php files
Verify file permissions (find /var/www/html -perm 0777)
Create MD5 baseline and schedule weekly check
Rotate credentials and check logs for suspicious outbound connections
Hitimisho & CTA
Kujua patterns za malware ni hatua muhimu ya kuzuia na kuirekebisha haraka. Ikiwa unahitaji msaada wa scan/full cleanup au security audit, tuma ujumbe sasa:
π WhatsApp: https://wa.me/255693118509
π Tovuti: https://www.faulink.com