Pentesting Lateral Movement: การแยก Chrome Bookmark โดยใช้ Python

Feb 25 2023
R. Eric Kiser ในฐานะผู้ทดสอบการเจาะระบบ สิ่งสำคัญคือต้องรวบรวมข้อมูลเกี่ยวกับผู้ใช้หรือระบบที่ถูกบุกรุกให้ได้มากที่สุด

ร. อีริค คิเซอร์

ในฐานะผู้ทดสอบการเจาะระบบ สิ่งสำคัญคือต้องรวบรวมข้อมูลเกี่ยวกับผู้ใช้หรือระบบที่ถูกบุกรุกให้ได้มากที่สุด เทคนิคที่มีประโยชน์สำหรับการเลื่อนไปด้านข้างคือการเปิดเผยทรัพยากรที่ผู้ใช้เข้าถึงบ่อยโดยแยกบุ๊กมาร์กออกจาก Google Chrome ด้วยบุ๊กมาร์กที่ได้รับ คุณสามารถใช้สคริปต์เพื่อรวบรวมข้อมูล หรือหากคุณมีการเข้าถึงระยะไกลด้วย GUI ให้ไปที่แต่ละหน้าด้วยตนเองเพื่อดูว่าสามารถแยกรหัสผ่านได้หรือไม่

เราจะต้องนำเข้าโมดูลบางส่วนเพื่อแยกข้อมูล osและshutilถูกนำเข้าเพื่อเข้าถึงระบบไฟล์และคัดลอกไฟล์ import sysและimport tempfileนำเข้าเพื่อตรวจสอบแพลตฟอร์มและสร้างไดเร็กทอรีชั่วคราว

import os
import sys
import shutil
import tempfile

bookmarks_file = os.path.expanduser('~/Library/Application Support/Google/Chrome/Default/Bookmarks')

if sys.platform == 'win32':
    bookmarks_file = os.path.expandvars(r'%LOCALAPPDATA%\Google\Chrome\User Data\Default\Bookmarks')
elif sys.platform == 'darwin':
    bookmarks_file = os.path.expanduser('~/Library/Application Support/Google/Chrome/Default/Bookmarks')

if not os.path.exists(bookmarks_file):
    print('Error: unable to locate your bookmarks file')
    sys.exit(1)

temp_dir = tempfile.mkdtemp()

try:
    shutil.copy2(bookmarks_file, temp_dir)
    bookmarks_file = os.path.join(temp_dir, os.path.basename(bookmarks_file))

    with open(bookmarks_file, 'r') as f:
        data = f.read()

    with open('bookmarks.html', 'w') as f:
        f.write(data)

finally:
    shutil.rmtree(temp_dir)

print ("bookmarks successfully downloaded in the current working directory")