hsheric0210 / AutoKkutu

KKutu Automation based on KKutu-Helper V.
11 stars 7 forks source link

MITM 프록시를 이용한 WebSocket Interceptor 구현 #83

Open hsheric0210 opened 9 months ago

hsheric0210 commented 9 months ago

이 방법의 최대 장점은, 바로 특수한 임베드 브라우저나 Selenium 같은 자동화 프레임워크를 사용하는 대신 사용자가 평상시에도 사용하는 '정상적인 브라우저'의 사이트 단에 직접적으로 스크립트를 삽입하여 그 어떤 '봇 감지' 비슷한 장치들도 쉽게 회피함과 동시에 거의 완벽한 상호운용성을 확보할 수 있다는 것이다.

원리는 AdGuard 등과 같은 '운영 체제 단'에서 동작하는 광고 차단 및 유저스크립트 제공 프로그램들과 완전 동일하다.

hsheric0210 commented 9 months ago
hsheric0210 commented 9 months ago

https://www.fluxzy.io/

https://github.com/ondrakrat/js-mitm-proxy https://stackoverflow.com/questions/3357170/beautifulsoup-and-asp-net-c

https://intoli.com/blog/javascript-injection/

hsheric0210 commented 9 months ago

https://github.com/pogosandbox/PoGoMITM

hsheric0210 commented 9 months ago

프록시 서버를 구축하는 것 외에도 TDI 또는 WFP 드라이버를 사용해도 된다고는 하는데... 아무리 생각해도 배보다 배꼽이 큰 처사인 것 같기는 하다...

https://blog.naver.com/kkan22/80087329641

당장 AdGuard도 기본적으로 TDI 기반, 선택적으로 WFP 기반으로 동작한다고 한다: https://adguard.com/kb/ko/adguard-for-windows/solving-problems/wfp-driver/ (실제로도 adgnetworktdidrv.sys, adgnetworkwfpdrv.sys 라는 이름의 TDI, WFP 드라이버를 찾을 수 있다)

https://tdifw.sourceforge.net/ https://learn.microsoft.com/ko-kr/windows-hardware/drivers/network/roadmap-for-developing-wfp-callout-drivers

아니면 또 다른 하나의 선택지로 WinDivert나 TAP 등을 사용할 수도 있다.

WinDivert: https://reqrypt.org/windivert.html https://github.com/basil00/Divert

OpenVPN TAP: https://community.openvpn.net/openvpn/wiki/ManagingWindowsTAPDrivers https://docs.mudfish.net/ko/docs/mudfish-cloud-vpn/faq-tap-driver/ https://github.com/OpenVPN/tap-windows6

WinTun: https://www.wintun.net/ https://github.com/WireGuard/wintun