ghosttype: اسکنر فارنزیک کردنشیالهای لو رفته در تاریخچه چتهای هوش مصنوعی
خلاصهٔ کاملتر
وقتی با ابزارهایی مثل Claude Code، Cursor یا ChatGPT Desktop کار میکنی، ممکنه ناخواسته API key، رمز دیتابیس یا توکنهای حساس رو توی مکالماتت وارد کرده باشی. ghosttype دقیقاً همین تاریخچهها رو زیر ذرهبین میبره — فایلهای .jsonl، دیتابیسهای SQLite، و حتی فایلهای رمزشدهی AES-128-CBC مربوط به ChatGPT Desktop.
این ابزار از دو موتور تشخیص موازی استفاده میکنه. اول TruffleHog که بیش از ۸۰۰ الگوی ساختاری داره و میتونه هر کردنشیال پیداشده رو مستقیماً از طریق API سرویسدهندهاش (مثل AWS، GitHub، Stripe) تأیید کنه. دوم یه موتور regex داخلی با ۳۰ الگوی ساختاری و ۱۰ الگوی heuristic که سیگنالهای متنی مثل api_key= یا JWT_SECRET= رو آفلاین شکار میکنه. بهصورت پیشفرض هر دو با هم اجرا میشن و نتایج ادغام میشن.
هر یافته یه فیلد verified داره — اگه TruffleHog تأیید کرده که کردنشیال هنوز زنده است مقدارش trueه، وگرنه false. این تمایز مهمه چون کمک میکنه تیمهای امنیتی اولویتبندی کنن کدام secret رو باید فوری rotate کرد.
# فقط کردنشیالهای تأییدشده و زنده
ghosttype scan --only-verified
# اسکن سریع و آفلاین بدون تماس با API سرویسدهنده
ghosttype scan --no-verification
# فیلتر کردن خروجی با jq
ghosttype scan --no-verification --format json --output - --quiet \
| jq '.[] | select(.detector_name == "Github")'
از نظر معماری، ghosttype دو لایه داره: لایه کشف که میدونه هر ابزار هوش مصنوعی دادههاش رو کجا و با چه فرمتی ذخیره میکنه (SQLite، JSONL، Electron safeStorage)؛ و لایه تشخیص که متن استخراجشده رو به یه پوشه موقت مینویسه، TruffleHog رو روش اجرا میکنه و نتایج NDJSON رو پارس میکنه. پوشه موقت بلافاصله بعد از اتمام کار پاک میشه.
برای محیطهای air-gapped یا عملیاتهایی که نباید در لاگهای ارائهدهنده رد بذارن، گزینه --no-verification وجود داره. خروجی نهایی بهصورت JSON و CSV در پوشه ghosttype_report ذخیره میشه و exit code یک به ازای هر یافته برمیگرده که امکان استفاده در pipeline های CI/CD رو هم فراهم میکنه.
نکات کلیدی:
- تاریخچه مکالمات Claude Code، Cursor، Codex و ChatGPT Desktop رو اسکن میکنه
- کردنشیالهای پیداشده رو از طریق API سرویسدهنده تأیید میکنه (زنده یا غیرزنده)
- دو موتور موازی: TruffleHog با ۸۰۰+ الگو و موتور regex داخلی آفلاین
- خروجی JSON و CSV با جزئیات کامل از جمله متن اطراف کردنشیال
- مناسب برای تیمهای red team، DLP و پنتسترها با مجوز کتبی
- پشتیبانی از --no-verification برای محیطهای آفلاین یا air-gapped




