· kaynak dev.to (home feed)
Lightpanda Session Bridge, yapay zeka ajanlarına kimlik bilgilerini açığa çıkarmadan gerçek oturumlar veriyor
Açık kaynaklı bir Chrome uzantısı ve yerel aktarıcı (relay), canlı ve kimlik doğrulanmış bir tarayıcı oturumunu headless tarayıcıya kopyalayarak yapay zeka ajanlarının parola görmeden oturum arkasındaki sitelerde çalışmasını sağlıyor.

Bir geliştirici, otonom yapay zeka ajanlarının kimlik doğrulamalı web uygulamalarında çalışabilmesini sağlayan Lightpanda Session Bridge adlı açık kaynaklı projeyi yayınladı. Proje, kullanıcının canlı tarayıcı oturumunu izole bir headless tarayıcıya klonluyor; parolalar veya token'lar hiçbir zaman ajana ulaşmıyor. Aracın ayrıntıları yazarı tarafından dev.to'daki bir yazıda anlatılıyor.
Ajanlar için kimlik doğrulama duvarı
Yazıya göre, modern web'de gerçek işler yapan ajanlar hızla aynı engele takılıyor: faturalandırma konsolları, SaaS panoları ve dahili portallar Google OAuth, SSO federasyonları, passkey'ler ve biyometrik 2FA'nın arkasında duruyor. Headless bir tarayıcı bir güvenlik anahtarına dokunamaz veya bir authenticator istemine yanıt veremez; bu yüzden geliştiriciler kötü çözümlere başvuruyor: parolaları prompt'lara veya .env dosyalarına sabitlemek, oturum çerezlerini elle yapılandırmalara kopyalamak ya da kullanıcının ana tarayıcısını doğrudan Chrome DevTools Protocol (CDP) üzerinden sürmek — bu da gerçek işleri aksatır ve diğer sekmelerin ele geçirilme riski taşır.
Bridge'in felsefesi şu: oturum açma ritüelini insan yapar, ajan ise zaten kimlik doğrulaması yapılmış bir runtime alır. Yazar, bir oturum çerezinin paroladan daha güvenli bir güven birimi olduğunu savunuyor: çerez geçicidir, ana tarayıcıdan çıkış yapılarak anında iptal edilebilir ve tek bir origin'e kısıtlıdır; oysa parola kalıcı ve sınırsız erişim verir ve bir LLM ajanı bu dizgiyi ele geçirdiğinde nereye gideceğine dair hiçbir garanti yoktur.
Üç bileşen
Sistem üç katmandan oluşuyor. Birincisi, Manifest V3 Chrome uzantısı (diyagramda Edge ve Comet de gösteriliyor) yalnızca activeTab, cookies ve storage izinlerini istiyor. Kullanıcı Sync'e tıkladığında uzantı aktif etki alanının çerezlerini yakalıyor ve yerel aktarıcıyla otomatik bir eşleştirme el sıkışması gerçekleştiriyor, elle kopyala-yapıştır olmadan paylaşımlı bir kriptografik token saklıyor.
İkincisi, yalnızca 127.0.0.1:8765'e bağlı olan relay/server.py adlı Python aktarıcı, güvenlik ağ geçidi olarak görev yapıyor. Katı origin eşleştirmesini zorunlu kılıyor, __Host- ve __Secure- çerez ön eklerini RFC 6265bis'e göre normalize ediyor ve çerez yapılarını Lightpanda uyumlu CDP mesajlarına çeviriyor; aynı zamanda lax gibi küçük harfli sameSite değerlerini Lightpanda'nın beklediği PascalCase Lax biçimine dönüştürüyor ve -31998 InvalidEnumTag CDP çökmelerini önlüyor.
Üçüncüsü, headless runtime'ın kendisi: Zig ile yazılmış, V8 içeren ve yapay zeka otomasyonu için özel olarak geliştirilmiş açık kaynaklı tarayıcı motoru Lightpanda. Yazar onu Windows ana makinesinden izole şekilde WSL2 içinde 9222 portunda çalıştırıyor ve tam bir Chromium'a göre çok daha küçük bellek ayak iziyle hızlı yürütme bildiriyor.
SSRF ve yerel sızıntılara karşı sağlamlaştırılmış
Çerez kabul eden yerel bir aktarıcı doğal bir yetki yükseltme hedefi olduğundan, yazar bunun baştan itibaren düşmanca bir SSRF yüzeyi olarak ele alındığını söylüyor. Yazıda listelenen önlemler şunlar: çerez adlarının veya değerlerinin hiç kaydedilmemesi; sabitlenmiş yalnızca loopback bağlaması; accounts.google.com, login.microsoftonline.com, appleid.apple.com, github.com ve auth0.com'a yönelik aktarımları reddeden bir kimlik sağlayıcı kara listesi; localhost takma adlarını, 10.0.0.0/8 ve 192.168.0.0/16 gibi özel alt ağları ve nip.io gibi wildcard DNS hizmetlerini düşüren DNS ve IP doğrulaması; ve time-of-check to time-of-use rebinding'e karşı savunma sağlayan 60 saniyelik sabit DNS önbelleği. Meşru bir chrome-extension origin başlığı olmadan eşleştirme uç noktasına gelen çağrılar anında 403 alıyor. Yazar, tasarımın özel IP reddetmeleri, CDP payload yapıları ve token zorlamasını kapsayan dokuz otomatik güvenlik test paketiyle desteklendiğini belirtiyor.
Ajan gerçekte ne yapıyor
Oturum eşitlendiğinde, ajan betikleri paketle birlikte gelen hafif bir Python SDK olan lightpanda_client.py'yi kullanıyor. Bu SDK, Lightpanda'nın CDP WebSocket'ine bağlanıyor, eşitlenmiş oturumu zaten taşıyan hedef sayfaya bağlanıyor veya onu oluşturuyor ve kimlik doğrulaması yapılmış bağlam içinde JavaScript çalıştırarak bir panodan profil adları, kota görünümleri veya CSRF token'ları gibi verileri çıkarıyor.
Neden önemli
Kimlik bilgisi yönetimi, ajanlı yapay zekanın en keskin sorunlarından biri. Parolaya sahip bir ajan sınırsız erişime sahiptir ve prompt'lar, izler (trace) ve günlükler sır sızmasının kanıtlanmış yerleridir. Bu projenin geniş kabul görüp görmeyeceğinden bağımsız olarak, ortaya koyduğu desen dikkat çekici: oturum açmayı insan yapıyor ve ajan, LLM tamamen güven sınırlarının dışında tutularak, izole bir runtime içinde yalnızca kapsamlı, iptal edilebilir, tek origin'li bir oturumu devralıyor. Uyarılar gerçek: eşitlenmiş bir çerez geçerli olduğu sürece yeniden oynatılabilir ve bu yaklaşım her makinede disiplinli aktarıcı hijyenine bağlı. Ancak güveni kalıcı kimlik bilgilerinden geçici oturumlara doğru kaydırmak, OAuth ve passkey'lerle boğuşan ajan geliştiricilerinin yakından inceleyeceği bir tasarım yönü olacak.
- #ai-agents
- #browser-automation
- #security
- #open-source
- #chrome-extension
İlgili yazılar
- aispace.sh, yapay zeka ajanlarına yönelik süreli dosya paylaşımı için script edilebilir bir open-source CLI yayınladı
- 70 satırlık bir Python yapay zeka ajanı demosu, prompt injection ile .env sızıntısıyla sonlanıyor
- Yapay zeka ajanları iki izolasyon laboratuvarından kaçtı; biri dört gün boyunca Hugging Face'in içinde geçirdi