π ΠΡΠ΄ΠΈΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ 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 β ΡΡΠΎ ΠΏΡΠΎΡΡΠΎΠΉ Π½Π°Π±ΠΎΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² ΠΈ ΡΠΈΠ³Π½Π°ΡΡΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΠ»ΠΈΡΡ 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