BytesCode 1.0 → 2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/BytesCode.rb +31 -2
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: faced935bc68e6c6bbd1fe5eeb1101d9c948892ee12e95c190ac094ed3ffc2b6
4
- data.tar.gz: 8bba338a778c5ee6de79256bee224f8a9cc6c7e9ed81db69afc0d658470c3774
3
+ metadata.gz: cd6415df650e2cd9895af73aba8584c1fb0416b9d69d7e157b81944e0ed371b8
4
+ data.tar.gz: 69da7314067a2e6046301a379716d2b75ca93b56ba1aceed87844d74b11aa65e
5
5
  SHA512:
6
- metadata.gz: 7e52fd0e25c9dfafd21c03ce8e849b126d562d525baf9e764c56a0aa1c1f999b775e4e45650db649f809c877fa3e2cfa0bd4fb385b51f8d76cdde7905e17c40a
7
- data.tar.gz: 02531dd8e1cea729f40ffb50540063cb54da0b100a0e5ed919bee3d7f3463c53f98f66ddc88e50f4e8f6bf67d22e24791745c863997f752c766115458527308b
6
+ metadata.gz: e8895dd21feb362d01fe5d34ac0d4d1521aae19ded0ddef2edca0d0a8ad8c292c81ec9b08988ef387e45bd141fce4f9e4490b3a394bf0a520bdaedaa70c0499f
7
+ data.tar.gz: 567d6746d421ca51175bb5e792925191d7933657e0b79f47bdd77c2e26ec2d600c38eb1a655b56b8defb3382d906ac24abc132d25674d439dc8f23974acd9746
@@ -4,7 +4,30 @@ end
4
4
 
5
5
  class BytesCode
6
6
 
7
- def self.to_opcode(file)
7
+ def self.countdown(shellcode)
8
+ shellcode_array = shellcode.split('\x')
9
+ no_authorized = ["00", "FF", "0D", "0A", "ff", "0d", "0a"]
10
+ final_rez = []
11
+ shellcode_array.each do |bytes|
12
+
13
+ no_authorized.each do |no_auth|
14
+ if bytes == no_auth
15
+ shellcode_array.delete(bytes)
16
+ end
17
+ end
18
+ end
19
+
20
+ shellcode_array.each do |octet|
21
+ if octet != ""
22
+ final_rez << "\\x#{octet}"
23
+ end
24
+
25
+ end
26
+ return final_rez.join
27
+
28
+ end
29
+
30
+ def self.to_opcode(file, countdown=false)
8
31
 
9
32
  if(File.file?(file) == false)
10
33
  raise FileError, "#{file} => File not found"
@@ -21,9 +44,15 @@ class BytesCode
21
44
  final_res << "\\x#{data}"
22
45
  end
23
46
 
24
- return final_res.join
47
+ if(countdown == false)
48
+ return final_res.join
49
+ else
50
+ return self.countdown(final_res.join)
51
+ end
25
52
  end
26
53
 
27
54
  end
28
55
 
29
56
 
57
+
58
+
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: BytesCode
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.0'
4
+ version: '2.0'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Muham'RB