
macOS और iOS आर्टिफैक्ट एकत्र करके नेटवर्क गतिविधि, क्रॉस-डिवाइस पहचान और भौतिक स्थान सहसंबंध की समयरेखा बनाता है, जो रिकॉनिसेंस और रेड टीम ऑपरेशन के लिए उपयोगी है।
RinHit - macOS पारिस्थितिकी तंत्र टोही ढांचा। नेटवर्क गतिविधि, क्रॉस-डिवाइस पहचान और भौतिक स्थान सहसंबंध की समयरेखा बनाने के लिए Apple पारिस्थितिकी तंत्र से आर्टिफैक्ट एकत्र करता है।
यह ओपन-सोर्स टोही मॉड्यूल है। क्लोज्ड-सोर्स Swift पेलोड (
rinhit-agent) हमारे रेडटीम द्वारा आंतरिक रूप से उपयोग किया जाता है और यह इस रिपॉजिटरी का हिस्सा नहीं है।
com.apple.wifi.known-networks.plist (पुराना) पार्स करता है या networksetup (macOS 15+ Data Vault) का उपयोग करता हैcom.apple.Bluetooth.plist से युग्मित, कैश्ड और कनेक्टेड डिवाइसioreg (IOKit) और system_profiler के माध्यम से कनेक्टेड USB डिवाइसhigh, मोबाइल हॉटस्पॉट = medium, आदि।# Clone
git clone https://github.com/toxy4ny/rinhit.git
cd rinhit
# Build
go build -o rinhit ./cmd/rinhit
# Or install directly
go install ./cmd/rinhit
./rinhit list
sudo आवश्यक है)sudo ./rinhit scan -v
sudo ./rinhit scan -c wifi,bluetooth -v
sudo ./rinhit scan --correlate -v
sudo ./rinhit scan -o report.json
# Wigle CSV डंप आयात करें
./rinhit geo import wigle-export.csv
# BSSID देखें
./rinhit geo lookup AA:BB:CC:DD:EE:FF
# कैश आँकड़े दिखाएँ
./rinhit geo stats
{
"generated_at": "2026-08-21T21:09:10Z",
"hostname": "MacBook-Pro-test.local",
"user": "root",
"artifacts": [
{
"id": "wifi-ns-iPhone7",
"collector": "wifi",
"type": "wifi-network",
"name": "iPhone7",
"severity": "medium",
"timestamp": "2026-08-21T14:09:10-07:00",
"source": "networksetup",
"data": {"ssid": "iPhone7", "source": "networksetup"},
"tags": ["wifi", "network", "macos15-fallback", "mobile-hotspot", "cross-device"]
}
],
"summary": {
"total_artifacts": 12,
"by_severity": {"info": 11, "medium": 1},
"by_collector": {"wifi": 12}
},
"data": {
"correlations": [
{
"type": "mobile-hotspot",
"confidence": 0.7,
"description": "Mobile hotspot 'iPhone7' detected - indicates iPhone/iPad tethering usage",
"artifact_ids": ["wifi-ns-iPhone7"],
"tags": ["mobile-hotspot", "tethering", "cross-device"]
}
]
}
}
rinhit/
├── cmd/rinhit/main.go # CLI entrypoint
├── pkg/
│ ├── collector/ # Collector interface & registry
│ │ ├── wifi/ # Wi-Fi artifact collector
│ │ ├── bluetooth/ # Bluetooth device collector
│ │ └── usb/ # USB device collector
│ ├── model/ # Artifact & Report structs
│ ├── parser/plist/ # Plist parsing with SIP fallback
│ ├── reporter/json/ # JSON reporter
│ ├── correlator/ # Cross-artifact correlation engine
│ └── geoloc/ # Offline BSSID geolocation cache
नया कलेक्टर जोड़ने के लिए, Collector इंटरफ़ेस लागू करें:
type Collector interface {
Name() string
Description() string
Collect(ctx context.Context) ([]model.Artifact, error)
RequiresRoot() bool
}
इसे cmd/rinhit/main.go में buildRegistry() में पंजीकृत करें।
networksetup (living off the land) पर फॉलबैक करता हैwifi कलेक्टर को sudo की आवश्यकता होती हैMIT - देखें LICENSE।
"जिस तरह घुन फल में छेद करता है, अंडे देता है, और अपने निशान छुपाने के लिए तने को काट देता है, उसी तरह RinHit Apple पारिस्थितिकी तंत्र में छेद करता है, स्थिरता स्थापित करता है, और भीतर से सुरक्षा सीमाओं को क्षरण करता है।"