तृतीय-पक्ष पोर्टलविरुद्ध UI-अवलंबित स्वयंचलन
प्रत्येक एंटरप्राइझकडे अशा पोर्टलची यादी असते ज्यात कर्मचारी दररोज मॅन्युअली लॉग इन करतात, असे काम करण्यासाठी जे स्वयंचलित असायला हवे होते पण नाही. ऑर्डर स्थिती तपासण्यासाठी विक्रेता पोर्टल. नियामक सबमिशन दाखल करण्यासाठी सरकारी साइट्स. पात्रता सत्यापित करण्यासाठी आणि दावा स्थिती तपासण्यासाठी विमा पेयर पोर्टल. क्रेडेन्शियल पुष्टीकरणासाठी राज्य परवाना मंडळे.
ह्या पोर्टलला APIs नाहीत. किंवा त्यांच्याकडे अनदस्तावेज, दर-मर्यादित किंवा प्रवेशासाठी पैसे देणाऱ्या "पसंतीच्या भागीदारांना" प्रतिबंधित APIs आहेत. डेटा लॉगिन पृष्ठामागे, HTML मध्ये रेंडर केलेले आहे, आणि ते बाहेर काढण्याचा एकमेव मार्ग लॉग इन करणे आणि UI नेव्हिगेट करणे आहे.
पारंपारिक स्वयंचलन ब्राउझर स्क्रिप्ट वापरते. Selenium, Playwright किंवा Puppeteer स्क्रिप्ट जे लॉग इन करतात, योग्य पृष्ठावर नेव्हिगेट करतात, CSS सेलेक्टर किंवा XPath द्वारे घटक शोधतात, डेटा काढतात आणि लॉग आउट करतात. ह्या स्क्रिप्ट काम करतात जोपर्यंत करत नाहीत. पोर्टल रिडिझाइन CSS क्लास नावे बदलते. लॉगिन प्रवाहात नवीन CAPTCHA जोडले जाते. नेव्हिगेशन मेनू साइडबारमधून हॅम्बर्गर मेनूमध्ये जातो. स्क्रिप्ट शांतपणे तुटते.
राज्य वैद्यकीय मंडळे विशेषतः कठोर उदाहरण आहेत. पन्नास आहेत, प्रत्येक वेगळ्या वेबसाइट, वेगळ्या लेआउट, वेगळ्या प्रमाणीकरण पद्धती आणि वेगळ्या डेटा स्वरूपांसह. ते कोणत्याही सूचनेशिवाय स्वतःच्या वेळापत्रकावर पुनर्रचना करतात.
Triggerfish हे कसे सोडवते
Triggerfish चे ब्राउझर स्वयंचलन LLM-आधारित दृश्य नेव्हिगेशनसह CDP-नियंत्रित Chromium एकत्र करते. एजंट पृष्ठ रेंडर केलेल्या पिक्सेल आणि अभिगम्यता स्नॅपशॉट म्हणून पाहतो, DOM ट्री म्हणून नाही. ते घटक ते कसे दिसतात आणि काय करतात यावर आधारित ओळखते, CSS क्लास नावांनी नाही.
सेलेक्टर स्क्रिप्टऐवजी दृश्य नेव्हिगेशन
ब्राउझर स्वयंचलन टूल्स सात ऑपरेशन्सद्वारे काम करतात: navigate, snapshot, click, type, select, scroll आणि wait. एजंट URL वर नेव्हिगेट करतो, रेंडर केलेल्या पृष्ठाचा स्नॅपशॉट घेतो, जे पाहतो त्याबद्दल तर्क करतो आणि कोणती कृती करायची ते ठरवतो. पृष्ठ संदर्भात अनियंत्रित JavaScript चालवणारे कोणतेही evaluate टूल नाही. एजंट पृष्ठाशी माणूस करेल त्याप्रमाणे संवाद साधतो, UI द्वारे, आणि दुर्भावनापूर्ण पृष्ठाद्वारे शोषण केला जाऊ शकणारा कोड चालवू शकत नाही.
सामायिक डोमेन सुरक्षा
ब्राउझर नेव्हिगेशन वेब फेच ऑपरेशन्ससारखीच डोमेन सुरक्षा कॉन्फिगरेशन सामायिक करते. triggerfish.yaml मधील एकच कॉन्फिग ब्लॉक SSRF डेनीलिस्ट, डोमेन अलोलिस्ट, डोमेन डेनीलिस्ट आणि डोमेन-वर्गीकरण मॅपिंग परिभाषित करतो. जेव्हा एजंट CONFIDENTIAL वर वर्गीकृत विक्रेता पोर्टलवर नेव्हिगेट करतो, तेव्हा सत्र taint स्वयंचलितपणे CONFIDENTIAL पर्यंत वाढतो.
SSRF डेनीलिस्ट हार्डकोड आणि ओव्हरराइड करता येत नाही. खाजगी IP श्रेणी, लिंक-लोकल पत्ते आणि क्लाउड मेटाडेटा एंडपॉइंट नेहमी अवरोधित केले जातात. विनंतीपूर्वी DNS रिझोल्यूशन तपासले जाते, DNS रिबाइंडिंग हल्ले रोखते.
ब्राउझर प्रोफाइल वॉटरमार्किंग
प्रत्येक एजंट स्वतःचे ब्राउझर प्रोफाइल राखतो, जे पोर्टलशी संवाद साधताना कालांतराने कुकीज, स्थानिक संचयन आणि सत्र डेटा जमा करतो. प्रोफाइल वर्गीकरण वॉटरमार्क वाहतो. एजंट CONFIDENTIAL विक्रेता पोर्टलमध्ये लॉग इन करण्यासाठी प्रोफाइल वापरल्यास, प्रोफाइल CONFIDENTIAL वर वॉटरमार्क केले जाते. PUBLIC वर्गीकरणावर चालणारे नंतरचे सत्र ते प्रोफाइल वापरू शकत नाही.
क्रेडेन्शियल व्यवस्थापन
पोर्टल क्रेडेन्शियल OS keychain (वैयक्तिक स्तर) किंवा एंटरप्राइझ vault (एंटरप्राइझ स्तर) मध्ये संग्रहित केले जातात, कधीही कॉन्फिगरेशन फाइल्स किंवा पर्यावरण चल मध्ये नाही. SECRET_ACCESS hook प्रत्येक क्रेडेन्शियल पुनर्प्राप्ती नोंदवतो. क्रेडेन्शियल कार्यान्वयन वेळी वर्कफ्लो इंजिनद्वारे सोडवले जातात आणि टाइपिंग इंटरफेसद्वारे ब्राउझर सत्रांमध्ये इंजेक्ट केले जातात.
सामान्य पोर्टल बदलांबाबत लवचिकता
सामान्य पोर्टल बदल झाल्यावर काय होते:
लॉगिन पृष्ठ रिडिझाइन. एजंट नवीन स्नॅपशॉट घेतो, अपडेट केलेले लेआउट ओळखतो आणि दृश्य संदर्भातून फॉर्म फील्ड शोधतो. पोर्टल पूर्णपणे वेगळ्या प्रमाणीकरण पद्धतीत (SAML, OAuth, हार्डवेअर टोकन) न बदलल्यास, कोणत्याही कॉन्फिगरेशन बदलाशिवाय लॉगिन काम करत राहतो.
नेव्हिगेशन पुनर्रचना. एजंट लॉगिननंतर पृष्ठ वाचतो आणि URL नमुन्यांऐवजी लिंक मजकूर, मेनू लेबल आणि पृष्ठ शीर्षकांवर आधारित लक्ष्य विभागाकडे नेव्हिगेट करतो.
नवीन कुकी संमती बॅनर. एजंट बॅनर पाहतो, स्वीकारा/नाकारा बटण ओळखतो, त्यावर क्लिक करतो आणि मूळ कार्यासह पुढे जातो.
CAPTCHA जोडला. इथेच दृष्टिकोनाच्या प्रामाणिक मर्यादा आहेत. साध्या प्रतिमा CAPTCHAs LLM च्या दृष्टी क्षमतांवर आधारित सोडवल्या जाऊ शकतात, पण reCAPTCHA v3 आणि तत्सम वर्तणुकीच्या विश्लेषण प्रणाली स्वयंचलित ब्राउझर अवरोधित करू शकतात. वर्कफ्लो शांतपणे अयशस्वी होण्याऐवजी ह्यांना मानवी हस्तक्षेप कतारमध्ये पाठवते.
MFA प्रॉम्प्ट. पोर्टलने पूर्वी आवश्यक नसलेल्या MFA ची आवश्यकता सुरू केल्यास, एजंट अनपेक्षित पृष्ठ ओळखतो, अधिसूचना प्रणालीद्वारे परिस्थिती अहवाल देतो आणि मानवाने MFA चरण पूर्ण करेपर्यंत वर्कफ्लो थांबवतो.
अनेक पोर्टलवर बॅच प्रक्रिया
वर्कफ्लो इंजिनचा for लूप समर्थन म्हणजे एकच वर्कफ्लो अनेक पोर्टल लक्ष्यांवर iterate करू शकतो. क्रेडेन्शियल पुष्टीकरण सेवा एकाच बॅच रनमध्ये पन्नासही राज्य वैद्यकीय मंडळांमध्ये परवाना स्थिती तपासणारी वर्कफ्लो परिभाषित करू शकते.
व्यवहारात हे कसे दिसते
क्रेडेन्शियलिंग संस्था प्रदाता नोंदणी प्रक्रियेचा भाग म्हणून राज्य वैद्यकीय मंडळांमध्ये आरोग्यसेवा प्रदाता परवाने सत्यापित करते. Triggerfish सह, वर्कफ्लो संपूर्ण पुष्टीकरण चक्र हाताळते. जेव्हा राज्य मंडळ त्यांचे पोर्टल रिडिझाइन करते, तेव्हा एजंट पुढील पुष्टीकरण प्रयत्नावर जुळवून घेतो. जेव्हा CAPTCHA स्वयंचलित प्रवेश अवरोधित करतो, तेव्हा वर्कफ्लो त्या राज्याला मॅन्युअल पुष्टीकरणासाठी फ्लॅग करते आणि बाकी बॅचवर प्रक्रिया सुरू ठेवते.
