@@ -29,18 +29,20 @@ def initialize(url,starttime, method)
29
29
# desc
30
30
# category
31
31
# callback
32
+ @rtype = { "i" => "INFO" . blue , "v" => "VULN" . red , "l" => "LOW" . green , "m" => "MIDUM" . yellow , "h" => "HIGH" . light_red }
33
+ @rissue = { "f" => "FILERD RULE" , "r" => "REFLECTED" , "x" => "XSS" , "s" => "STATIC ANALYSIS" , "d" => "DYNAMIC ANALYSIS" }
32
34
end
33
35
34
36
def add_issue_first ( type , issue , param , payload , pattern , description )
35
- rtype = { "i" => "INFO" . blue , "v" => "VULN" . red , "l" => "LOW" . green , "m" => "MIDUM" . yellow , "h" => "HIGH" . red }
36
- rissue = { "f" => "FILERD RULE" , "r" => "REFLECTED" , "x" => "XSS" , "s" => "STATIC ANALYSIS" , "d" => "DYNAMIC ANALYSIS" }
37
+ rtype = @rtype
38
+ rissue = @rissue
37
39
@issue . insert ( 0 , [ "-" , rtype [ type ] , rissue [ issue ] , @method , param , pattern , description ] )
38
40
@query . push payload
39
41
end
40
42
41
43
def add_issue ( type , issue , param , payload , pattern , description )
42
- rtype = { "i" => "INFO" . blue , "v" => "VULN" . red , "l" => "LOW" . green , "m" => "MIDUM" . yellow , "h" => "HIGH" . red }
43
- rissue = { "f" => "FILERD RULE" , "r" => "REFLECTED" , "x" => "XSS" , "s" => "STATIC ANALYSIS" , "d" => "DYNAMIC ANALYSIS" }
44
+ rtype = @rtype
45
+ rissue = @rissue
44
46
@issue << [ @issue . size , rtype [ type ] , rissue [ issue ] , @method , param , pattern , description ]
45
47
@query . push payload
46
48
end
@@ -84,35 +86,46 @@ def to_cli
84
86
puts table
85
87
puts "< Available Objects >" . yellow
86
88
@filtered_objects . each do |key , value |
87
- eh = [ ]
88
- tag = [ ]
89
- sc = [ ]
90
- uc = [ ]
91
- puts "[#{ key } ]" . blue +" param"
92
- value . each do |n |
93
- if n . include? "=64"
94
- # eh
95
- eh . push n . chomp ( "=64" )
96
- elsif n . include? "xsp<"
97
- # tag
98
- n = n . sub ( "xsp<" , "" )
99
- tag . push n . chomp ( ">" )
100
- elsif n . include? ".xspear"
101
- # uc
102
- uc . push n . sub ( ".xspear" , "" )
103
- else
104
- # sc
105
- sc . push n . sub ( "XsPeaR" , "" )
89
+ begin
90
+ eh = [ ]
91
+ tag = [ ]
92
+ sc = [ ]
93
+ uc = [ ]
94
+ puts "[#{ key } ]" . blue +" param"
95
+ value . each do |n |
96
+ if n . include? "=64"
97
+ # eh
98
+ eh . push n . chomp ( "=64" )
99
+ elsif n . include? "xsp<"
100
+ # tag
101
+ n = n . sub ( "xsp<" , "" )
102
+ tag . push n . chomp ( ">" )
103
+ elsif n . include? ".xspear"
104
+ # uc
105
+ uc . push n . sub ( ".xspear" , "" )
106
+ else
107
+ # sc
108
+ sc . push n . sub ( "XsPeaR" , "" )
109
+ end
106
110
end
111
+ puts " + Available Special Char: " . green +"#{ sc . map ( &:inspect ) . join ( ',' ) . gsub ( '"' , "" ) } " . gsub ( ',' , ' ' )
112
+ puts " + Available Event Handler: " . green +"#{ eh . map ( &:inspect ) . join ( ',' ) } "
113
+ puts " + Available HTML Tag: " . green +"#{ tag . map ( &:inspect ) . join ( ',' ) } "
114
+ puts " + Available Useful Code: " . green +"#{ uc . map ( &:inspect ) . join ( ',' ) } "
115
+ rescue
116
+ puts "Not found"
107
117
end
108
- puts " + Available Special Char: " . green +"#{ sc . map ( &:inspect ) . join ( ',' ) . gsub ( '"' , "" ) } " . gsub ( ',' , ' ' )
109
- puts " + Available Event Handler: " . green +"#{ eh . map ( &:inspect ) . join ( ',' ) } "
110
- puts " + Available HTML Tag: " . green +"#{ tag . map ( &:inspect ) . join ( ',' ) } "
111
- puts " + Available Useful Code: " . green +"#{ uc . map ( &:inspect ) . join ( ',' ) } "
112
118
end
113
- puts "< Raw Query >" . yellow
119
+ if @filtered_objects . length == 0
120
+ puts "Not found"
121
+ end
122
+ puts "\n < Raw Query >" . yellow
123
+ begin
114
124
@query . each_with_index do |q , i |
115
125
puts "[#{ i } ] #{ @url . sub ( URI . parse ( @url ) . query , "" ) } " +q
116
126
end
127
+ rescue
128
+ puts "Not found"
129
+ end
117
130
end
118
131
end
0 commit comments