Caja (pronounced KAH-hah)[1] was a Google project for sanitizing third party HTML, CSS, and JavaScript. On January 31, 2021, Google archived the project due to known vulnerabilities and lack of maintenance to keep up with the latest web security research, recommending instead the Closure toolkit.[2]
The Caja project was led by Jasvir Nagra with the JavaScript portion designed by Google research scientist Mark S. Miller in 2008[3][4] as a JavaScript implementation for "virtual iframes" based on the principles of object-capabilities. It would take JavaScript (technically, ECMAScript 5 strict mode code), HTML, and CSS input and rewrite it into a safe subset of HTML and CSS, plus a single JavaScript function with no free variables. That means the only way such a function could modify an object, was if it was given a reference to the object by the host page. Instead of giving direct references to DOM objects, the host page typically gives references to wrappers that sanitize HTML, proxy URLs, and prevent redirecting the page; this allowed Caja to prevent certain phishing and cross-site scripting attacks, and prevent downloading malware. Also, since all rewritten programs ran in the same frame, the host page could allow one program to export an object reference to another program; then inter-frame communication was simply method invocation.
The word "caja" is Spanish for "box" or "safe" (as in a bank), the idea being that Caja could safely contain JavaScript programs as well as being a capabilities-based JavaScript.
Caja was used by Google in its Google Apps Script[5] products. In 2008 MySpace[6][7] and Yahoo![8] had both deployed a very early version of Caja.
See also
References
- ^ Miller, Mark (10 October 2007). "[e-lang] [cap-talk] Caja discussion on the Caplet Group". EROS-OS.org. Archived from the original on 17 May 2008.
- ^ "Introduction - Caja". Google Developers. Archived from the original on 22 January 2021.
- ^ Miller, Mark S.; Samuel, M.; Laurie, B.; Awad, I.; Stay, M. (7 June 2008). "Safe active content in sanitized JavaScript". Google Scholar.
- ^ Synodinos, Dio (25 February 2011). "ECMAScript 5, Caja and Retrofitting Security, with Mark S. Miller". InfoQ.
- ^ "Html Service: Caja Sanitization". Google Developers. Archived from the original on 26 August 2013.
- ^ "MySpace: Caja JavaScript scrubbing ready for prime time". 4 February 2008. Archived from the original on 1 October 2008.
- ^ "Web 2.0 Investors: Pay Attention To Caja". Tim Oren's Due Diligence. 11 April 2008.
- ^ Pullara, Sam (28 October 2008). "OpenSocial API Blog: Launched: Yahoo!'s First Implementation of OpenSocial Support". OpenSocial. Archived from the original on 16 December 2008.
External links
|
---|
|
|
|
---|
Software | |
---|
Operating systems | |
---|
Machine learning models | |
---|
Neural networks |
- EfficientNet
- Gato
- Inception
- MobileNet
- Transformer
- WaveNet
|
---|
Computer programs | |
---|
Formats and codecs | |
---|
Programming languages | |
---|
Search algorithms | |
---|
Domain names |
- .app
- .dev
- .google
- .zip
- g.co
- google.by
|
---|
Typefaces | |
---|
|
|
Software |
---|
A | |
---|
B | |
---|
C | |
---|
D |
- Data Commons
- Dataset Search
- Desktop
- Dictionary
- Dinosaur Game
- Directory
- Docs
- Docs Editors
- Domains
- Drawings
- Drive
- Duo
|
---|
E | |
---|
F | |
---|
G | |
---|
H | |
---|
I | |
---|
J | |
---|
K | |
---|
L | |
---|
M | |
---|
N | |
---|
O | |
---|
P | |
---|
Q | |
---|
R | |
---|
S | |
---|
T | |
---|
U | |
---|
V | |
---|
W | |
---|
Y |
- YouTube
- YouTube Kids
- YouTube Music
- YouTube Premium
- YouTube Shorts
- YouTube Studio
- YouTube TV
- YouTube VR
|
---|
|
|
Hardware |
---|
Pixel | Smartphones | |
---|
Smartwatches | |
---|
Tablets | |
---|
Laptops | |
---|
Other |
- Pixel Buds (2017–present)
|
---|
|
---|
Nexus | Smartphones | |
---|
Tablets |
- Nexus 7 (2012)
- Nexus 10 (2012)
- Nexus 7 (2013)
- Nexus 9 (2014)
|
---|
Other |
- Nexus Q (2012)
- Nexus Player (2014)
|
---|
|
---|
Other | |
---|
|
|
|
---|
Advertising |
- Feldman v. Google, Inc. (2007)
- Rescuecom Corp. v. Google Inc. (2009)
- Goddard v. Google, Inc. (2009)
- Rosetta Stone Ltd. v. Google, Inc. (2012)
- Google, Inc. v. American Blind & Wallpaper Factory, Inc. (2017)
- Jedi Blue
|
---|
Antitrust |
- European Union (2010–present)
- United States v. Adobe Systems, Inc., Apple Inc., Google Inc., Intel Corporation, Intuit, Inc., and Pixar (2011)
- Umar Javeed, Sukarma Thapar, Aaqib Javeed vs. Google LLC and Ors. (2019)
- United States v. Google LLC (2020)
- United States v. Google LLC (2023)
|
---|
Intellectual property |
- Perfect 10, Inc. v. Amazon.com, Inc. (2007)
- Viacom International, Inc. v. YouTube, Inc. (2010)
- Lenz v. Universal Music Corp.(2015)
- Authors Guild, Inc. v. Google, Inc. (2015)
- Field v. Google, Inc. (2016)
- Google LLC v. Oracle America, Inc. (2021)
- Smartphone patent wars
|
---|
Privacy |
- Rocky Mountain Bank v. Google, Inc. (2009)
- Hibnick v. Google, Inc. (2010)
- United States v. Google Inc. (2012)
- Judgement of the German Federal Court of Justice on Google's autocomplete function (2013)
- Joffe v. Google, Inc. (2013)
- Mosley v SARL Google (2013)
- Google Spain v AEPD and Mario Costeja González (2014)
- Frank v. Gaos (2019)
|
---|
Other |
- Garcia v. Google, Inc. (2015)
- Google LLC v Defteros (2020)
- Epic Games v. Google (2021)
- Gonzalez v. Google LLC (2022)
|
---|
|
Related |
---|
Concepts |
- Beauty YouTuber
- BookTube
- BreadTube
- "Don't be evil"
- Gayglers
- Google as a verb
- Google bombing
- 2004 U.S. presidential election
- Google effect
- Googlefight
- Google hacking
- Googleshare
- Google tax
- Googlewhack
- Googlization
- Illegal flower tribute
- Objectives and key results
- Rooting
- Search engine manipulation effect
- Side project time
- Sitelink
- Site reliability engineering
- StudyTube
- VTuber
- YouTube Poop
- YouTuber
|
---|
Products | Android | |
---|
Street View coverage |
- Africa
- Antarctica
- Asia
- Europe
- North America
- Oceania
- South America
|
---|
YouTube |
- Copyright strike
- Education
- Features
- Moderation
- Most-disliked videos
- Most-liked videos
- Most-subscribed channels
- Most-viewed channels
- Most-viewed videos
- Arabic music videos
- Chinese music videos
- French music videos
- Indian videos
- Pakistani videos
- Official channel
- Social impact
- YouTube Premium original programming
|
---|
Other |
- Gmail interface
- Maps pin
- Most downloaded Google Play applications
- Stadia games
|
---|
|
---|
Documentaries |
- AlphaGo
- Google: Behind the Screen
- Google Maps Road Trip
- Google and the World Brain
- The Creepy Line
|
---|
Books |
- Google Hacks
- The Google Story
- Googled: The End of the World as We Know It
- How Google Works
- I'm Feeling Lucky
- In the Plex
- The MANIAC
|
---|
Popular culture |
- Google Feud
- Google Me (film)
- "Google Me" (Kim Zolciak song)
- "Google Me" (Teyana Taylor song)
- Is Google Making Us Stupid?
- Proceratium google
- Matt Nathanson: Live at Google
- The Billion Dollar Code
- The Internship
- Where on Google Earth is Carmen Sandiego?
|
---|
Other | |
---|
|
|
Italics denote discontinued products.
Category
Outline
|