shell bypass 403

UnknownSec Shell


name : RunCampaign.php
<?php

namespace App\Console\Commands;

use App\Jobs\StoreCampaignJob;
use App\Models\Campaigns;
use App\Models\CampaignsList;
use App\Models\CampaignsRecipients;
use App\Models\CampaignsSenderid;
use App\Models\CampaignsSendingServer;
use Carbon\Carbon;
use Illuminate\Console\Command;

class RunCampaign extends Command
{
    /**
     * The name and signature of the console command.
     *
     * @var string
     */
    protected $signature = 'campaign:run';

    /**
     * The console command description.
     *
     * @var string
     */
    protected $description = 'Run campaign';

    /**
     * Create a new command instance.
     *
     * @return void
     */
    public function __construct()
    {
        parent::__construct();
    }

    /**
     * Execute the console command.
     *
     * @return int
     */
    public function handle(): int
    {

        $fromDate = Carbon::now()->subDays(3)->toDateTimeString();
        $toDate   = Carbon::now()->toDateTimeString();
        //collect recurring campaign and check status
        $recurring = Campaigns::where('schedule_type', 'recurring')->where('status', 'scheduled')->where('upload_type', 'normal')->whereBetween('schedule_time', [$fromDate, $toDate])->cursor();

        foreach ($recurring as $sms) {
            if ($sms->recurring_end->gt(Carbon::now())) {
                // recurring running
                dispatch(new StoreCampaignJob($sms->id));

                if ($sms->frequency_cycle != 'custom') {
                    $schedule_cycle   = $sms::scheduleCycleValues();
                    $limits           = $schedule_cycle[$sms->frequency_cycle];
                    $frequency_amount = $limits['frequency_amount'];
                    $frequency_unit   = $limits['frequency_unit'];
                } else {
                    $frequency_amount = $sms->frequency_amount;
                    $frequency_unit   = $sms->frequency_unit;
                }

                $schedule_date = $sms->nextScheduleDate($sms->schedule_time, $frequency_unit, $frequency_amount);

                $new_camp = $sms->replicate()->fill([
                        'status'        => 'scheduled',
                        'schedule_time' => $schedule_date,
                ]);

                $data = $new_camp->save();

                if ($data) {

                    //insert campaign contact list
                    foreach (CampaignsList::where('campaign_id', $sms->id)->cursor() as $list) {
                        CampaignsList::create([
                                'campaign_id'     => $new_camp->id,
                                'contact_list_id' => $list->contact_list_id,
                        ]);
                    }

                    //insert campaign recipients
                    foreach (CampaignsRecipients::where('campaign_id', $sms->id)->cursor() as $recipients) {
                        CampaignsRecipients::create([
                                'campaign_id' => $new_camp->id,
                                'recipient'   => $recipients->recipient,
                        ]);
                    }


                    //insert campaign sender ids
                    foreach (CampaignsSenderid::where('campaign_id', $sms->id)->cursor() as $sender_ids) {
                        CampaignsSenderid::create([
                                'campaign_id' => $new_camp->id,
                                'sender_id'   => $sender_ids->sender_id,
                                'originator'  => $sender_ids->originator,
                        ]);
                    }


                    //insert campaign sending servers
                    foreach (CampaignsSendingServer::where('campaign_id', $sms->id)->cursor() as $servers) {
                        CampaignsSendingServer::create([
                                'campaign_id'       => $new_camp->id,
                                'sending_server_id' => $servers->sending_server_id,
                                'fitness'           => $servers->fitness,
                        ]);
                    }
                }

            } else {
                //recurring date end
                $sms->delivered();
            }
        }

        return 0;
    }
}

© 2025 UnknownSec
afwwrfwafr45458465
Password