Beispiel #1
0
 def __init__(self, name, lineno, scope, ast_node=None):
     NodeRep.__init__(self, name, lineno, ast_node=ast_node)
     
     self._scope = scope
     self._formal_params = []
     self._parsed = False
     self._method_call = []
Beispiel #2
0
 def __init__(self, name, lineno, ast_node, scope, parent_obj = None):
     NodeRep.__init__(self, name, lineno, ast_node=ast_node)
     ast_node._obj = self
     self._scope = scope
     self._parent_obj = parent_obj
     self._params = self._parse_params()
     # Funccall can be called multiple times (in custom function or method)
     self._vulntraces = []
Beispiel #3
0
 def __init__(self, name, lineno, scope, ast_node=None):
     NodeRep.__init__(self, name, lineno, ast_node=ast_node)
     
     self._scope = scope
     # return statements are stored as VariableDef
     self._return_vars = []
     self._formal_params = []
     self._ast_node.obj = self
Beispiel #4
0
 def __init__(self, name, lineno, scope, object_var, ast_node=None):
     
     NodeRep.__init__(self, name, lineno, ast_node=ast_node)
     
     self._scope = scope
     self._object_var = object_var
     self._methods = {}
     self._scope.obj = self
Beispiel #5
0
 def __init__(self, name, lineno, scope, ast_node=None):
     
     NodeRep.__init__(self, name, lineno, ast_node=ast_node)
     
     # Containing Scope.
     self._scope = scope
     # Parent VariableDef
     self._parents = []
     # Ancestors AST FunctionCall nodes
     self.funccall_nodes = []
     # Ancestors AST Variable nodes
     self.var_nodes = []
     # Is this var controlled by user?
     self._controlled_by_user = None
     # Vulns this variable is safe for. 
     self._safe_for = []
     # Being 'root' means that this var doesn't depend on any other.
     self._is_root = True if (name in VariableDef.USER_VARS) else None 
     # Request parameter name, source for a possible vuln.
     self._taint_source = None
     # Is object property?
     self._object_property = False
     # Anon var? (param var in functioncall).
     self._anon_var = False