راکت

کدی مشابه eva

17 پاسخ

سلام خسته نباشید وقتی از کد eval () استفاده میکنم هاستم اونو یک کد مخرب میشناسه چه کدی رو جایگزینش کنم که همون کارو انجام بده ولی بدون اینکه یک کد مخرب شناسایی شه

ثبت پرسش جدید

پاسخ‌ها

17
.
.
@jwkwok

تا اونجایی که میدونم جایگزین مستقیم نداره یعنی کارمون رو با یه فانکشن مثل اون انجام بدیم
ولی این لینک ها خیلی می تونه کمکت کنه
https://stackoverflow.com/questions/10671602/whats-alternative-of-eval-function
https://bytes.com/topic/php/answers/447461-eval-insecure-but-what-alternatives
https://arrayoverflow.com/question/what-is-alternative-of-eval-function-in-php/415

محمد مهدی امیری
محمد مهدی امیری
@wpuser

تخصص: جوجه برنامه نویس PHP

eval(htmlspecialchars_decode(gzinflate(base64_decode($WPUSER))));

کدی که استفاده میکنم

شاید پاسخ شما همین‌جا باشد

.
.
@jwkwok

به احتمال زیاد مشکلت از $WPUSER هست مگر نه خود eval مخرب نیست تا جایی که می دونم

محمد مهدی امیری
محمد مهدی امیری
@wpuser

تخصص: جوجه برنامه نویس PHP

متغیر $WPUSER داخلش با این کد پر شده

eval('?>'.gzuncompress(gzinflate(base64_decode(strrev($An0n_3xPloiTeR)))));

این کد یک کد مخرب شناسایی میشه ولی اگه eval اولش رو پاک کنی نه میشه کدی درست
.کل کد من اینه


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width= , initial-scale=1.0">
    <title>Document</title>
     <!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.1/dist/css/bootstrap.min.css">

<!-- jQuery library -->
<script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.slim.min.js"></script>

<!-- Popper JS -->
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js"></script>

<!-- Latest compiled JavaScript -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.1/dist/js/bootstrap.bundle.min.js"></script> 
</head>
<body class="bg-info">
    <div class="container">
        <div class="row">
            <div class="col-md-8 offset-md-2 bg-light p-4 mt-5 rounded">
                <form action="action.php" method="POST">
                    <div class="form-group">
                    <label for="message">message:</label>
                    </div>

                    <?php
                    $phpcode = $_POST['text'];
                        $obfuscate_low_level = strrev(base64_encode(gzdeflate(gzcompress($phpcode))));

                                echo '
<textarea class="form-control" rows="10" dir="ltr" >
<?php
$An0n_3xPloiTeR = "'.$obfuscate_low_level.'";
eval("?>".gzuncompress(gzinflate(base64_decode(strrev($An0n_3xPloiTeR)))));
?></textarea><br><br>
';
                    ?>
                                        <button type="button" class="btn btn-primary" onclick="location.href='http://project.wpuser.ir/';">back</button>
                </form>
            </div>
        </div>
    </div>
</body>
</html>

من داخل این کد یک بار از eval استفاده کردم که اونو به چشم شل اسکریپت میبینه خط 38 اگه eval رو پاک کنم دیگه کد مخرب شناسایی نمیشه ولی خب کدم درست کار نمیکنه چه کدی رو جایگزین کد eval() کنم

.
.
@jwkwok

اهان پس می خوای از کارکرد eval استفاده کنی بدون استفاده از فانکشن eval() اونجوری که یادمه این کد رو برای لاینسس گزاری می خواست پس بیا از این روش استفاده کنیم

<?php
error_reporting(-1);

// Our PHP code inside a variable
$phpCode = '
class Foo
{
    private $name;
    public function __construct($name)
    {
        $this->name = $name;
    }

    public function hello()
    {
        return $this->name;
    }
}

$serializedOutput = null;
foreach (range(1, 100000) as $i) {
    $object = new Foo("name" . $i);
    $out[] = $object->hello();
}
$serializedOutput = serialize($out);
';
// end of variable
function fakeEval($phpCode) {
    $tmpfname = tempnam("/tmp", "fakeEval");
    $handle = fopen($tmpfname, "w+");
    fwrite($handle, "<?php\n" . $phpCode);
    fclose($handle);
    include $tmpfname;
    unlink($tmpfname);
    return get_defined_vars();
}
extract(fakeEval($phpCode));
echo strlen($serializedOutput);

چیز خاصی نباید بگم کد واضحه ولی
نگاه کن اول یک متغیر ساختیم بعد هرچی کد php داشتیم ریختیم توش تو توی کدت یجورایی باید از WPuser استفاده کنی
توی فانکشن eval_fake ما یک ورودی از نوع رشته داریم
توی فانکشن اول یه فایل ساختیم و توش کد های php مون رو اضافه کردیم و توش نوشتیم
بعد همون فایل اینکلود کردیم و سپس بعد اینکلود حذفش کردیم
اینجوری تمام کد های php مون به صفحه اضافه میشن
اگه درباره ی فانکشن های fOpen و fWrite و fClose سوال داری باید بگم فانکشن های درونی و از پیش ساخته شدهی php هستن برای مدیریت باز کردن و نوشتن درون فایل و بستنش می تونی دربارشون تحقیق کنی
البته باید بگم این روش منابع زیادی مصرف میکنه چون هی فایل میسازه بعد حذفش می کنه.

محمد مهدی امیری
محمد مهدی امیری
@wpuser

تخصص: جوجه برنامه نویس PHP

ممنون ولی باز من نتونستم درستش کنم

$An0n_3xPloiTeR = "'.$obfuscate_low_level.'";
eval("?>".gzuncompress(gzinflate(base64_decode(strrev($An0n_3xPloiTeR)))));

ببخشید که اینو میگم این کدی که من ازش استفاده میکنم و به عنوان کد مخرب شناسایی میشه خودت کد رو کامل کنی کدی که برام فرستادی چون من نتونستم
ممنون🙏

.
.
@jwkwok

اون فنکشن های بالا رو به کدت اضافه کن اول

"?>".gzuncompress(gzinflate(base64_decode(strrev($An0n_3xPloiTeR))))

نمی دونم کد بالا چه و چی کار میکنه ولی اگه کد php بسازه باید اینجوری بشه

fakeEval("?>".gzuncompress(gzinflate(base64_decode(strrev($An0n_3xPloiTeR)))));

دقت کن کد php که به fakeEval پاس میدی فقط باید کد باشه و <?php و ؟> نداشته باشه

محمد مهدی امیری
محمد مهدی امیری
@wpuser

تخصص: جوجه برنامه نویس PHP

ببخشید من نتونستم باز هم انجام بدم اگه بخوام از evalبا فانکشن استفاده کنم باید چیکار کنم

رایموند
رایموند
@Raymond

تخصص: مختصص وردپرس - برنامه نویس لاراول

درود...
چرا می خوای از eval استفاده کنید؟
از جایی می دونم استفاده از تابع eval استفاده معمولي و مرسوم نيست که مگر در موارد خاص استفاده ميشه ...

.
.
@jwkwok

ایشون می خوان یک سایت لاینسس گزاری بسازن اول کد رو اینکود می کنن و بعدش اخرش برای اجرا دیکود و ما می دونیم خروجی دیکود رشته هستش و با تابع eval می خوایم کاری کنه رشته عین کد اجرا بشه ولی متاسفانه با تابع fakeEval که من هم براشون ساختم نمی تونن کار کنن و کانفیگش رو بلد نیستن

محمد مهدی امیری
محمد مهدی امیری
@wpuser

تخصص: جوجه برنامه نویس PHP

من اگه بخوام این کدو اجرا کنم باید از چه تابعی استفاده کنم

gzuncompress(gzinflate(base64_decode(strrev($An0n_3xPloiTeR)))));
پرتو پرنده افشار
پرتو پرنده افشار
@partoafshar1372

تخصص: رشتم نرم افزاره کامپیوتر اما شغلی ندارم

سلام جناب خسته نباشید من گذاشتمش زیر هدر ، رفت زیر هدر اما بازم جای مناسبی قرار نگرفت ، آخه من می خاستم ب هدر چسبیده باشه ولی خیلی از هم فاصله دارن صبر کنید الان عکسشو براتون می فرستم:
آدرس عکس:https://uploadkon.ir/uploads/158325_222-25-2022-2-26-00-AM.jpg
می دونید ک چطوری با آدرس عکس کار می کنند؟
بعد اینک باید فکنم padding رو تغییر بدیم ، درسته؟بعد کدوم padding رو تغییر بدم؟ممنون میشم بگین

رایموند
رایموند
@Raymond

تخصص: مختصص وردپرس - برنامه نویس لاراول

پرتو پرنده افشار
پرتو پرنده افشار
@partoafshar1372

تخصص: رشتم نرم افزاره کامپیوتر اما شغلی ندارم

سلام خسته نباشید
آهان متوجه شدم ، منظورتون عکس پروفایل هستش ، اون عکس پروفایل هستش ، آخه عکس پروفایل رو ک نمیشه برداشت ولی کمی راهنمایی می فرمایید که کدوم قسمت برم ک پاکش کنم؟از <blogprofile> استفاده کرده با تشکر

محمد مهدی امیری
محمد مهدی امیری
@wpuser

تخصص: جوجه برنامه نویس PHP

سلام ممنون که واقعا کمکم کنید
من متوجه شدم که وقتی از متغیر داخل eval() استفاده میکنم کدم کد مخرب شناسایی میشه

<?php
function wpuser()
{
    $An0n_3xPloiTeR = "==AACM2DpFYhKmbrji5q";
}
eval("?>".gzuncompress(gzinflate(base64_decode(strrev(wpuser())))));
?>

کد فعلی اینه هنوزم ارور داره چون از eval() متغیر گذاشتم

رایموند
رایموند
@Raymond

تخصص: مختصص وردپرس - برنامه نویس لاراول

@wpuser
این پیوندی که دادم یه نگاهی بنداز

محمد مهدی امیری
محمد مهدی امیری
@wpuser

تخصص: جوجه برنامه نویس PHP

این لینک که فرستادیم دقیقا کدی هست که بنده نوشتم
اما مشکل من اینه وقتی داخل eval متغیر استفاده کد مخرب شناسایی میشه

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام