![]() Server : Apache System : Linux server2.thebrownbagmedia.com 4.18.0-553.34.1.el8_10.x86_64 #1 SMP Wed Jan 8 09:40:06 EST 2025 x86_64 User : topnotchcv ( 1029) PHP Version : 8.1.32 Disable Function : NONE Directory : /scripts/ |
#!/usr/local/cpanel/3rdparty/bin/perl # cpanel - scripts/checkbashshell Copyright 2022 cPanel, L.L.C. # All rights reserved. # copyright@cpanel.net http://cpanel.net # This code is subject to the cPanel license. Unauthorized copying is prohibited use strict; my @shells = ( '/usr/local/cpanel/bin/jailshell', '/usr/local/cpanel/bin/noshell', '/bin/bash', '/bin/false', '/bin/ftpsh', ); my $contents = slurp_shells(); foreach my $shell (@shells) { if ( $contents !~ m/$shell/ ) { $contents .= "$shell\n"; } } write_shells($contents); exit; sub slurp_shells { open( my $shells_fh, '<', '/etc/shells' ) or die "Couldn't open /etc/shells for reading: $!"; local $/; my $contents = <$shells_fh>; $contents .= "\n" unless $contents =~ m/\n$/; return $contents; } sub write_shells { my ($contents) = @_; open( my $shells_fh, '>', '/etc/shells' ) or die "Couldn't open /etc/shells for writing: $!"; print {$shells_fh} $contents; close $shells_fh or die "Couldn't write /etc/shells. Please verify its contents! $!"; }