May 19, 2022

πŸ”Ž Аудит исходного ΠΊΠΎΠ΄Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ GREP

БСгодня Π² этом руководствС ΠΌΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ статичСском тСстировании бСзопасности ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (SAST), Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ, Ρ‚ΠΈΠΏΠ°Ρ…, ΠΌΠ΅Ρ‚ΠΎΠ΄Π°Ρ…, инструмСнтах ΠΈ Ρ‚.Π΄.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π΄Π°Π΄ΠΈΠΌ Π²Π°ΠΌ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ SAST, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ, ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΉΡ‚ΠΈ уязвимости Π² исходном ΠΊΠΎΠ΄Π΅ любого Π²Π΅Π±-прилоТСния Π½Π° Π±Π°Π·Π΅ языка PHP с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ kali linux ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ β€œgrep”.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π°Π½Π°Π»ΠΈΠ· исходного ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ Π°ΡƒΠ΄ΠΈΡ‚ исходного ΠΊΠΎΠ΄Π°?

Богласно OWASP: Анализ ΠΈΠ»ΠΈ Π°ΡƒΠ΄ΠΈΡ‚ исходного ΠΊΠΎΠ΄Π°, Ρ‚Π°ΠΊΠΆΠ΅ извСстный ΠΊΠ°ΠΊ инструмСнты статичСского тСстирования бСзопасности ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (SAST), ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ исходный ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ скомпилированныС вСрсии ΠΊΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π½Π°ΠΉΡ‚ΠΈ нСдостатки бСзопасности.

SAST ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ΅Π½ ΠΊΠ°ΠΊ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ‚Π°ΠΊ ΠΈ для нас, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ исходный ΠΊΠΎΠ΄ для обнаруТСния уязвимостСй бСзопасности, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π΅Π»Π°ΡŽΡ‚ прилоТСния нашСй ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ восприимчивыми ΠΊ Π°Ρ‚Π°ΠΊΠ°ΠΌ, поэтому ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π½Π°Ρ‚ΡŒ ΠΎΠ±ΠΎ всСм этом с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π° бСзопасности.

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ Π²Π°ΠΌ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ SAST ΠΈ DAST:

πŸ› SAST ΠΈΠ»ΠΈ DAST: Π§Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для тСстирования бСзопасности ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ тСстированиС β€œΡ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика” ΠΈ β€œΠ±Π΅Π»ΠΎΠ³ΠΎ ящика”?

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ SAST ΠΈ DAST Ρ‚Π°ΠΊΠΆΠ΅ извСстны ΠΊΠ°ΠΊ тСстированиС β€œΠ±Π΅Π»ΠΎΠ³ΠΎ ящика” ΠΈ тСстированиС β€œΡ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика”.

ВСстированиС β€œΡ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика” относится ΠΊ Π»ΡŽΠ±ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ тСстирования ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ исслСдуСт ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±Π΅Π· знания Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ Π΄ΠΈΠ·Π°ΠΉΠ½Π°, структуры ΠΈΠ»ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

ВСстированиС β€œΠ±Π΅Π»ΠΎΠ³ΠΎ ящика” – это Ρ‚ΠΈΠΏ тСстирования, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ тСстировщик ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΊΠΎΠ΄.

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ части установки уязвимого прилоТСния

Установка Π²Π΅Π±-прилоТСния с ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ bWAAP

bWAPP, ΠΈΠ»ΠΈ buggy web application – это бСсплатноС Π·Π°Π²Π΅Π΄ΠΎΠΌΠΎ нСбСзопасноС Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ.

bWAPP – это PHP-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅Π΅ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… MySQL.

Оно ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΎ Π½Π° Linux/Windows с Apache/IIS ΠΈ MySQL

ΠΠ°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ это уязвимоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² любой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС довольно просто, для этого достаточно ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ссылкС, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π½ΠΈΠΆΠ΅, Ρ€Π°Π·Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ apache ΠΈ всС.

https://sourceforge.net/projects/bwapp/ 
unzip -d /var/www/html/bwaap/ bWAAP_latest.zip

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, всС Π»ΠΈ Ρ„Π°ΠΉΠ»Ρ‹ распакованы ΠΈΠ»ΠΈ Π½Π΅Ρ‚, пСрСйдя Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ apache с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

cd /var/www/html/bWAPP/ 
ls -l 
 
 

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° Grep?

Grep – это ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки для поиска Π² Π½Π°Π±ΠΎΡ€Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ тСкста, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… рСгулярному Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ.

Π•Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ происходит ΠΎΡ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ed g/re/p (globally search for a regular expression and print matching lines), которая ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΎΡ‚ ΠΆΠ΅ эффСкт.

ΠœΡ‹ Π΄ΡƒΠΌΠ°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ слСдуСт Π·Π½Π°Ρ‚ΡŒ ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… основных ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ… ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ grep, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΡŽ исходного ΠΊΠΎΠ΄Π°, поэтому Π½ΠΈΠΆΠ΅ ΠΌΡ‹ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΈ нСсколько основных ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Π»Π΅Π³Ρ‡Π°Ρ‚ Π²Π°ΠΌ использованиС ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ grep Π²ΠΎ врСмя Π°ΡƒΠ΄ΠΈΡ‚Π° SAST.

🐧 ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Grep Π² систСмах Linux

grep Π‘Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

  • grep boo /etc/passwd: базовая ΠΊΠΎΠΌΠ°Π½Π΄Π° для поиска слова Π² Ρ„Π°ΠΉΠ»Π΅.
  • grep β€˜word’ filename : ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для поиска ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ слова Π² Ρ„Π°ΠΉΠ»Π΅.
  • grep -c β€˜root’ frontpage.txt: подсчСт слов, ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π² Ρ„Π°ΠΉΠ»Π΅.
  • grep -n β€œroot” /etc/passwd: Π½ΠΎΠΌΠ΅Ρ€ строки Π²ΠΎ Π²Ρ…ΠΎΠ΄Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅.
  • grep -i β€˜bar’ file1: Π½Π°ΠΉΡ‚ΠΈ Π±Π΅Π· ΡƒΡ‡Π΅Ρ‚Π° рСгистра ex : bar,Bar,BAR,
  • grep -r β€œ192.168.1.5” /etc/ : экурсивно, Ρ‚.Π΅. ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅.
  • grep -R β€˜passwd’ /etc/: Π½Π°ΠΉΡ‚ΠΈ слово Π² Ρ„Π°ΠΉΠ»Π΅ ΠΈΠ»ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ ΠΈΠ»ΠΈ Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅.
  • grep -color β€˜root’ /etc/passwd: Ρ€Π°ΡΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ Ρ†Π²Π΅Ρ‚ΠΎΠΌ

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ Π½Π°Ρ‡Π½Π΅ΠΌ Π°ΡƒΠ΄ΠΈΡ‚ исходного ΠΊΠΎΠ΄Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Grep.

Найти систСмный Π²Ρ‹Π·ΠΎΠ² EXEC()

Π‘Π½Π°Ρ‡Π°Π»Π° ΠΌΡ‹ рассмотрим Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рисункС Π½ΠΈΠΆΠ΅.

БистСмный Π²Ρ‹Π·ΠΎΠ² β€œexec” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для выполнСния Ρ„Π°ΠΉΠ»Π°, находящСгося Π² Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ процСссС, Π° β€œ-ir” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для поиска систСмного Π²Ρ‹Π·ΠΎΠ²Π° β€œexec” Π²ΠΎ всСх php Ρ„Π°ΠΉΠ»Π°Ρ… Π²Π΅Π±-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ, которая ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Ρ‚ всС систСмныС Π²Ρ‹Π·ΠΎΠ²Ρ‹ β€œexec(” ΠΈΠ· php Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ ΠΈΡ… Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π».

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΌΡ‹ это сдСлали?

ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΡΠ°Π½ΠΈΡ€ΡƒΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄ ΠΈ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ этот Π²Π²ΠΎΠ΄, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ ΡΠΎΠ²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ RCE Π°Ρ‚Π°ΠΊΠΈ.

ИспользованиС grep <синтаксис> <строка, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ> <ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ webapp>

grep -ir  "exec(" /var/www/html/bWAPP/

Π¦Π²Π΅Ρ‚Π½ΠΎΠΉ Π²Ρ‹Π²ΠΎΠ΄

БущСствуСт простой ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ†Π²Π΅Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π° Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ шаблон β€œ-color” Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ наш Π²Ρ‹Π²ΠΎΠ΄.

grep -ir --color "exec(" /var/www/html/bWAPP/

Поиск Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Exec() Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ…

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ систСмного Π²Ρ‹Π·ΠΎΠ²Π° β€œexec(” Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ… Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ .php, .xml, .txt ΠΈ Ρ‚.Π΄., ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ шаблон include ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ grep.

Как ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рисункС Π½ΠΈΠΆΠ΅, Π² ΠΊΠ°ΠΊΠΈΡ… Ρ„Π°ΠΉΠ»Π°Ρ… php ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ функция β€œexec(β€œ.

grep -ir --color "exec(" /var/www/html/bWAAP/ --include=*.php

Поиск Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…

Иногда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· исходного ΠΊΠΎΠ΄Π° Π²Π΅Π±-прилоТСния, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ уязвимым.

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π½Π°ΠΉΡ‚ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ Π² Ρ„Π°ΠΉΠ»Π°Ρ… исходного ΠΊΠΎΠ΄Π°, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π½ΠΈΠΆΠ΅.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΊΠ°Ρ‚ΡŒ строку пароля Π² Ρ„Π°ΠΉΠ»Π°Ρ… с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ β€œ.xml” ΠΈ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ Π΅Π΅ Π½Π° Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π», Ссли Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½Π°ΠΉΠ΄Π΅Ρ‚.

grep -ir --color "password" /var/www/html/bWAPP --include=*.xml 
 

Аналогичным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π½Π°ΠΉΡ‚ΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π²Π°ΠΆΠ½Ρ‹Π΅ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π»ΠΎΠ³ΠΈΠ½, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ, ΠΏΠ°Ρ€ΠΎΠ»ΡŒ, api ΠΊΠ»ΡŽΡ‡ΠΈ ΠΈ Ρ‚.Π΄.

ИспользованиС ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ β€œgrep” с ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ β€œcat”

Cat – это Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ инструмСнт, прСдустановлСнный Π² kali linux для рСдактирования ΠΈΠ»ΠΈ создания Ρ„Π°ΠΉΠ»ΠΎΠ².

cat просто отправляСт содСрТимоС Ρ„Π°ΠΉΠ»Π° Π½Π° стандартный Π²Ρ‹Π²ΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ отобраТаСтся Π½Π° стандартном Π²Π²ΠΎΠ΄Π΅ grep, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ° соСдинила ΠΈΡ… | (pipe).

Как Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½ΠΈΠΆΠ΅, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этих Π΄Π²ΡƒΡ… ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΉ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ вывСсти Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄ Π½Π° Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π».

ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ запроса MySQLi

Ѐункция query() / mysqli_query() выполняСт запрос ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ процСсс выполнСния sql-запросов, Ρ‚ΠΎ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ всС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ β€œquery(.” с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π½ΠΈΠΆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

grep -ir --color "query(." /var/www/html/bWAPP/ --include=*.php

НайдСм Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ eval()

Ѐункция eval() ΠΎΡ†Π΅Π½ΠΈΠ²Π°Π΅Ρ‚ строку ΠΊΠ°ΠΊ PHP-ΠΊΠΎΠ΄.

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ эта функция ΠΏΠΎΠ»Π΅Π·Π½Π° для хранСния PHP-ΠΊΠΎΠ΄Π° Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, Π½ΠΎ ΠΈΠ·-Π·Π° отсутствия Π½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΉ санации ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°Ρ‚ΡŒ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°.

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°

Π’ PHP ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄ Π² основном обрабатываСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ $_GET, $_POST, $_COOKIE ΠΈΠ»ΠΈ $_REQUEST.

Однако ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ $_FILES, $_SERVER ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ….

Команда, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для поиска Π²Π²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ β€œ$_GET”.

grep -ir --color "\$_GET" /var/www/html/bWAPP/

Поиск нСбСзопасных транспортных ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ²

ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ для поиска всСх нСбСзопасных ΠΈΠ»ΠΈ бСзопасных ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ftp, http, tcp, https, file ΠΈ Ρ‚.Π΄.

Π˜ΡΡΠ»Π΅Π΄ΡƒΡ эти ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Π³Π΄Π΅ Π² Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π΅ΡΡ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ нСдостатки.

grep -ir --color "http://" /var/www/html/bWAPP/   
 
grep -ir --color "ftp://" /var/www/html/bWAPP/   
 
grep -ir --color "file://" /var/www/html/bWAPP/

ΠŸΠΎΠ΄ΡΡ‡Π΅Ρ‚ количСства совпадСний

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΉΡ‚ΠΈ количСство строк, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π·Π°Π΄Π°Π½Π½ΠΎΠΉ строкС/ΡˆΠ°Π±Π»ΠΎΠ½Ρƒ.

grep -ir -c --color "exec(" /var/www/html/bwaap/

Π’Ρ‹Π²ΠΎΠ΄ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½ΠΎΠΌΠ΅Ρ€Π° строки

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ строки Ρ„Π°ΠΉΠ»Π° с сопоставлСнной строкой.

grep -ir -n --color "exec(" /var/www/html/bWAPP/

ИмСна Ρ„Π°ΠΉΠ»ΠΎΠ², ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΡˆΠ°Π±Π»ΠΎΠ½Ρƒ

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ просто ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ содСрТат Π·Π°Π΄Π°Π½Π½ΡƒΡŽ строку/шаблон.\

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅ kali linux β€œegrep”.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ egrep?

egrep – это Π°Π±Π±Ρ€Π΅Π²ΠΈΠ°Ρ‚ΡƒΡ€Π° ΠΎΡ‚ β€œExtended Global Regular Expressions Print”.

Π­Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая сканируСт Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» строка Π·Π° строкой, возвращая строки, содСрТащиС шаблон, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡƒ рСгулярному Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ.

Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ grep ΠΈ egrep Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ grep – это ΠΊΠΎΠΌΠ°Π½Π΄Π°, которая позволяСт ΠΈΡΠΊΠ°Ρ‚ΡŒ содСрТимоС Π² соотвСтствии с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ рСгулярным Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ строки, Π° egrep – это Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ grep, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΠΈΡΠΊΠ°Ρ‚ΡŒ содСрТимоС, примСняя Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ рСгулярныС выраТСния для отобраТСния ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… строк.

Поиск Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ инструмСнта egrep

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° выполняСт поиск уязвимых Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ Π²ΠΎ всСх Ρ„Π°ΠΉΠ»Π°Ρ… PHP Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅.

egrep -r --color --include "*.php" -e "(eval|assert|preg_replace)\(" .

Поиск XSS-уязвимости Π² ΠΊΠΎΠ΄Π΅ PHP

ΠœΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π΅Π½ для поиска XSS-уязвимостСй Π² PHP-ΠΊΠΎΠ΄Π΅.

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ доступ ΠΊ систСмС

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²Π΅Ρ€Π½Π΅Ρ‚ всС Ρ„Π°ΠΉΠ»Ρ‹ PHP Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Π½Π° ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ доступа ΠΊ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС.

egrep -r --color --include "*.php" -e "(fopen|fread|fwrite|fclose)\(" .

НайдСм криптографичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ случаи, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ криптографичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

Найти Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΌ Π½Π°ΠΉΡ‚ΠΈ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ.

CRASS – Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ исходного ΠΊΠΎΠ΄Π°

Code review audit script scanner” (CRASS).

БСйчас ΠΎΠ½ ΠΈΡ‰Π΅Ρ‚ строки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ интСрСсны Π°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΠ°ΠΌ.

Π“Π»Π°Π²Π½ΠΎΠ΅ – простота: Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ, ΠΊΡ€ΠΎΠΌΠ΅ ΠΏΠ°Ρ€Ρ‹ стандартных инструмСнтов ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки *nix (особСнно grep).

Установка инструмСнта CRASS

Π˜Ρ‚Π°ΠΊ, рСбята, всС, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, это сначала ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ вСсь инструмСнт с github с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git clone, ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ этого инструмСнта, Π° Π·Π°Ρ‚Π΅ΠΌ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π΅Π³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ bash.

ПослС этого для Π°Π½Π°Π»ΠΈΠ·Π° исходного ΠΊΠΎΠ΄Π° любого Π²Π΅Π±-прилоТСния Π½Π° Π±Π°Π·Π΅ PHP Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡƒΡ‚ΡŒ ΠΊ исходному ΠΊΠΎΠ΄Ρƒ ΠΈ всС.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° автоматичСски Π½Π°ΠΉΠ΄Π΅Ρ‚ всС уязвимости ΠΈ сохранит ΠΈΡ… Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ β€œgrep-output”.

git clone https://github.com/floyd-fuh/crass 
cd crass 
bash grep-it.sh

Graudit

Graudit – это простой Π½Π°Π±ΠΎΡ€ скриптов ΠΈ сигнатур, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ нСдостатки бСзопасности Π² исходном ΠΊΠΎΠ΄Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ GNU grep.

Он сравним с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ прилоТСниями статичСского Π°Π½Π°Π»ΠΈΠ·Π°, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ RATS, SWAAT ΠΈ flaw-finder, ΠΏΡ€ΠΈ этом тСхничСскиС трСбования свСдСны ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΡƒ ΠΈ ΠΎΠ½ ΠΎΡ‡Π΅Π½ΡŒ Π³ΠΈΠ±ΠΊΠΈΠΉ.

ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ этот инструмСнт Π½Π° свою ΠΌΠ°ΡˆΠΈΠ½Ρƒ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄.

Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ написан Π½Π° bash, поэтому ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½ΠΈΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ bash Π² kali linux.

git clone https://github.com/wireghoul/graudit 
cd graudit 
ls -l 
bash graudit -h

ΠŸΡ€ΠΈΡˆΠ»ΠΎ врСмя Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ этим инструмСнтом.

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΡƒΠΊΠ°ΠΆΠ΅ΠΌ ΠΏΡƒΡ‚ΡŒ ΠΊ исходному ΠΊΠΎΠ΄Ρƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ посмотрим, ΠΊΠ°ΠΊΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ этот инструмСнт.

Как Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ, ΠΎΠ½ выявил Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ уязвимости ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ.

Но Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ спСциализированныС сканнСры ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ язык/стСк:

βœ— 11 Π»ΡƒΡ‡ΡˆΠΈΡ… сканСров бСзопасности PHP для поиска уязвимостСй βœ—

‏Source itsecforu.ru

Π‘Π΄Π΅Π»Π°Π½ΠΎ Π±ΠΎΡ‚ΠΎΠΌ @chotamreaderbot