1. import os
  2. import subprocess
  3. import sys
  4. import platform
  5. def invalidate_session_cookies(domain):
  6. """
  7. Invalidates session cookies for a given domain using browser-specific commands.
  8. Handles different operating systems and browser types.
  9. """
  10. os_name = platform.system()
  11. if os_name == "Windows":
  12. # Example for Chrome on Windows - Requires Chrome to be installed and in PATH
  13. try:
  14. subprocess.run([
  15. "cmd", "/c",
  16. f"powershell -Command \"Get-ItemProperty 'HKCU:\\Software\\Google\\Chrome\\User Data\\Default\\Cookies' | Select-Object -ExpandProperty Data | Where-Object {$_.Host -eq '{domain}'} | ForEach-Object {Remove-Item $_}\"",
  17. ], check=True, capture_output=True)
  18. print(f"Successfully invalidated session cookies for {domain} (Chrome on Windows)")
  19. except subprocess.CalledProcessError as e:
  20. print(f"Error invalidating cookies (Chrome on Windows): {e.stderr.decode()}")
  21. print("Ensure Chrome is installed and accessible in your PATH.")
  22. elif os_name == "Darwin": # macOS
  23. # Example for Safari on macOS - Requires Safari to be installed
  24. try:
  25. subprocess.run([
  26. "osascript",
  27. "-e",
  28. f'do shell script "rm -f ~/Library/Caches/com.apple.Safari/Cookies/Main/www.{domain}.cookies"',
  29. ], check=True, capture_output=True)
  30. print(f"Successfully invalidated session cookies for {domain} (Safari on macOS)")
  31. except subprocess.CalledProcessError as e:
  32. print(f"Error invalidating cookies (Safari on macOS): {e.stderr.decode()}")
  33. print("Ensure Safari is installed.")
  34. elif os_name == "Linux":
  35. # Example for Firefox on Linux - Requires Firefox to be installed
  36. try:
  37. subprocess.run([
  38. "firefox",
  39. "-profilemanager",
  40. "-a",
  41. "remove",
  42. f"session-store.js$,{domain}",
  43. ], check=True, capture_output=True)
  44. print(f"Successfully invalidated session cookies for {domain} (Firefox on Linux)")
  45. except subprocess.CalledProcessError as e:
  46. print(f"Error invalidating cookies (Firefox on Linux): {e.stderr.decode()}")
  47. print("Ensure Firefox is installed and accessible in your PATH.")
  48. else:
  49. print(f"Unsupported operating system: {os_name}")
  50. print("Cannot invalidate session cookies.")
  51. if __name__ == '__main__':
  52. if len(sys.argv) != 2:
  53. print("Usage: python script.py <domain>")
  54. sys.exit(1)
  55. domain_to_invalidate = sys.argv[1]
  56. invalidate_session_cookies(domain_to_invalidate)

Add your comment