Firefox 확장 프로그램 8만 개, 과연 설치 가능할까?

by DD
1개월 전
조회수 10

Firefox 확장 프로그램 8만 개를 모두 설치하려는 시도에 대한 기술적 분석

자동화된 스크립트(Automated Script)를 사용하여 확장 프로그램 목록을 수집하고, 설치 시도

설치 과정에서의 문제점: 메모리 부족, 렌더링 실패, 브라우저 충돌 등

가장 큰 확장 프로그램: dmitlichess (196.3MB) - 체스 게임 관련

커뮤니티 반응: 성능 저하, 보안 문제, 무의미함 등 부정적 평가가 주를 이룸

확장 프로그램 수집 및 스크립트 자동화

저자는 Firefox 부가 기능(Add-ons) API를 활용하여 모든 확장 프로그램 정보를 수집했다. 검색 API(Search API)를 통해 초기 3만 개의 확장 프로그램을 확보했으나, 추가적인 정렬 방식을 사용하여 6만 8천 개 이상을 확보했다. 또한, 제외 기능(Exclude Function)을 활용하여 API 호출 횟수를 줄이는 최적화를 시도했다. 이 과정에서 Bun을 사용하여 스크립트를 실행하고, Hugging Face에 데이터셋을 업로드하여 공유했다.

확장 프로그램 설치 시도와 문제점

저자는 8만 개 이상의 확장 프로그램을 설치하기 위해 여러 번의 시도를 거쳤다. 초기에는 엔터프라이즈 정책(Enterprise Policies)을 사용하려 했으나, 메모리 부족으로 실패했다. 이후, 수동 다운로드(Manual Download) 및 설치를 시도했지만, Firefox의 성능 저하로 인해 어려움을 겪었다. 특히, 4,000개 이상의 확장 프로그램을 설치한 후에는 웹 페이지 로딩이 불가능해지는 등 심각한 문제가 발생했다.

확장 프로그램 분석 및 흥미로운 사례

저자는 설치된 확장 프로그램들을 분석하여 다양한 흥미로운 사례를 발견했다. 가장 큰 확장 프로그램은 196.3MB의 dmitlichess였으며, 다수의 오디오 파일을 포함하고 있었다. 또한, 악성 확장 프로그램(Malicious Extensions)을 발견하여 보고하기도 했다. 특히, 피싱(Phishing) 시도를 하는 확장 프로그램과 SEO 스팸(SEO Spam)을 유발하는 확장 프로그램들을 확인했다. 데이터 미저장 정책(Zero-Retention Policy)을 준수하는 확장 프로그램은 없었다.

성능 및 사용성 문제

8만 개 이상의 확장 프로그램을 설치한 Firefox는 심각한 성능 저하를 보였다. about:addons 페이지 로딩에 6시간이 소요되었으며, 일부 웹 페이지는 아예 로딩되지 않았다. 또한, 메모리 사용량(Memory Usage)이 27GB에서 37GB 사이를 오가며, 시스템 자원을 과도하게 사용했다. 이러한 문제로 인해, 실제 사용 환경에서는 8만 개 확장 프로그램 설치가 불가능하다는 결론을 내렸다.

확장 프로그램 생태계에 대한 고찰

저자는 확장 프로그램 생태계의 다양한 측면을 분석하며, 몇 가지 흥미로운 통계를 제시했다. 34.3%의 확장 프로그램은 일일 사용자가 없으며, 76.7%는 오픈 소스(Open Source) 라이선스를 사용하고 있다. 또한, 23%의 확장 프로그램은 분석 시점 이후에 생성되었으며, 19%는 사용자, 리뷰, 스크린샷, 다운로드, 아이콘이 없는 상태였다. 이러한 통계는 확장 프로그램 생태계의 다양성(Diversity)품질(Quality)에 대한 시사점을 제공한다.

Installing every* Firefox extension