pwn 0.4.698 → 0.4.699

Sign up to get free protection for your applications and to get access to all the features.
Files changed (6) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +2 -1
  3. data/README.md +2 -2
  4. data/bin/pwn +18 -0
  5. data/lib/pwn/version.rb +1 -1
  6. metadata +17 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1876724f8a6e17d3f41247dc8bc4daea0f8fadaf433a99883ed67b016c45205d
4
- data.tar.gz: f5f93dd5ed24f7d8e3d880bcd05d183d3105c10f3515302cf88a8db256e5fdf1
3
+ metadata.gz: d745dcbcd6c2a339cc95cd95cf520971dd1cb5d382e440222cad856b610899d4
4
+ data.tar.gz: 0fbe7d75659820c93ff70d1803fc397d4496a43e9148ee303e0d661cc7e88446
5
5
  SHA512:
6
- metadata.gz: f8703953cf8b45c61a0de488246dd9ee19d213d3c7577e43f756d26283f49842fc45371aeddcc00e734f730f9b89146a8df3363f47e9c9476de1c77f53078383
7
- data.tar.gz: 5403587ece0718fa16fb20a053c37b12a32470cca9c97b0dade132d1ad321a4326253e7826458fbbc9fd50933e7f4fc4def891f8856b38658cf18d0e32297fce
6
+ metadata.gz: ccb00ebd0473169fef1745f37cdf988344afa39709590ff96d3d304f041a1a8fa664ade80425eb554649872bc891742466975826a3e79c0e34bbb24238bdb438
7
+ data.tar.gz: a0c6cbcfe85105ace99b455f38804c75f03a24457a0b9b713e9b87cc66927610a09f2366f147cde39f298d8bf02554eb505f83a2c21b15fc7113102b1bc28b7c
data/Gemfile CHANGED
@@ -80,7 +80,8 @@ gem 'sinatra', '3.0.6'
80
80
  gem 'slack-ruby-client', '2.1.0'
81
81
  gem 'socksify', '1.7.1'
82
82
  gem 'spreadsheet', '1.3.0'
83
- gem 'sqlite3', '1.6.2'
83
+ gem 'sqlite3', '1.6.3'
84
+ gem 'sys-proctable', '1.3.0'
84
85
  gem 'thin', '1.8.2'
85
86
  gem 'tty-prompt', '0.23.1'
86
87
  gem 'tty-spinner', '0.9.3'
data/README.md CHANGED
@@ -37,7 +37,7 @@ $ rvm use ruby-3.2.2@pwn
37
37
  $ rvm list gemsets
38
38
  $ gem install --verbose pwn
39
39
  $ pwn
40
- pwn[v0.4.698]:001 >>> PWN.help
40
+ pwn[v0.4.699]:001 >>> PWN.help
41
41
  ```
42
42
 
43
43
  [![Installing the pwn Security Automation Framework](https://raw.githubusercontent.com/0dayInc/pwn/master/documentation/pwn_install.png)](https://youtu.be/G7iLUY4FzsI)
@@ -52,7 +52,7 @@ $ rvm use ruby-3.2.2@pwn
52
52
  $ gem uninstall --all --executables pwn
53
53
  $ gem install --verbose pwn
54
54
  $ pwn
55
- pwn[v0.4.698]:001 >>> PWN.help
55
+ pwn[v0.4.699]:001 >>> PWN.help
56
56
  ```
57
57
 
58
58
 
data/bin/pwn CHANGED
@@ -4,6 +4,7 @@
4
4
  require 'optparse'
5
5
  require 'pwn'
6
6
  require 'pry'
7
+ require 'sys/proctable'
7
8
  require 'yaml'
8
9
 
9
10
  opts = {}
@@ -292,10 +293,27 @@ begin
292
293
  )
293
294
 
294
295
  # Start PWN REPL
296
+ pwn_pid = Process.pid
295
297
  Pry.start(
296
298
  self,
297
299
  prompt: prompt
298
300
  )
299
301
  rescue StandardError => e
300
302
  raise e
303
+ ensure
304
+ child_pids = Sys::ProcTable.ps(smaps: false).select do |pe|
305
+ pe.ppid == pwn_pid
306
+ end.map(&:pid)
307
+
308
+ grandkid_pids = Sys::ProcTable.ps(smaps: false).select do |pe|
309
+ child_pids.include?(pe.ppid)
310
+ end.map(&:pid)
311
+
312
+ grandkid_pids.each do |grandkid_pid|
313
+ Process.kill('TERM', grandkid_pid)
314
+ end
315
+
316
+ child_pids.each do |child_pid|
317
+ Process.kill('TERM', child_pid)
318
+ end
301
319
  end
data/lib/pwn/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PWN
4
- VERSION = '0.4.698'
4
+ VERSION = '0.4.699'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pwn
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.698
4
+ version: 0.4.699
5
5
  platform: ruby
6
6
  authors:
7
7
  - 0day Inc.
@@ -982,14 +982,28 @@ dependencies:
982
982
  requirements:
983
983
  - - '='
984
984
  - !ruby/object:Gem::Version
985
- version: 1.6.2
985
+ version: 1.6.3
986
986
  type: :runtime
987
987
  prerelease: false
988
988
  version_requirements: !ruby/object:Gem::Requirement
989
989
  requirements:
990
990
  - - '='
991
991
  - !ruby/object:Gem::Version
992
- version: 1.6.2
992
+ version: 1.6.3
993
+ - !ruby/object:Gem::Dependency
994
+ name: sys-proctable
995
+ requirement: !ruby/object:Gem::Requirement
996
+ requirements:
997
+ - - '='
998
+ - !ruby/object:Gem::Version
999
+ version: 1.3.0
1000
+ type: :runtime
1001
+ prerelease: false
1002
+ version_requirements: !ruby/object:Gem::Requirement
1003
+ requirements:
1004
+ - - '='
1005
+ - !ruby/object:Gem::Version
1006
+ version: 1.3.0
993
1007
  - !ruby/object:Gem::Dependency
994
1008
  name: thin
995
1009
  requirement: !ruby/object:Gem::Requirement