<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://course.secsem.ru/w/index.php?action=history&amp;feed=atom&amp;title=%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D1%83%D1%8E_%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C_%282019%29%2F%D0%9D%D0%B5%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%B0%D1%8F_%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2</id>
	<title>Введение в практическую безопасность (2019)/Небезопасная загрузка файлов - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://course.secsem.ru/w/index.php?action=history&amp;feed=atom&amp;title=%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D1%83%D1%8E_%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C_%282019%29%2F%D0%9D%D0%B5%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%B0%D1%8F_%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2"/>
	<link rel="alternate" type="text/html" href="https://course.secsem.ru/w/index.php?title=%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D1%83%D1%8E_%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(2019)/%D0%9D%D0%B5%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%B0%D1%8F_%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2&amp;action=history"/>
	<updated>2026-06-04T19:37:58Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>https://course.secsem.ru/w/index.php?title=%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D1%83%D1%8E_%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(2019)/%D0%9D%D0%B5%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%B0%D1%8F_%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2&amp;diff=191&amp;oldid=prev</id>
		<title>Asterite: /* Но далеко не только это */</title>
		<link rel="alternate" type="text/html" href="https://course.secsem.ru/w/index.php?title=%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D1%83%D1%8E_%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(2019)/%D0%9D%D0%B5%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%B0%D1%8F_%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2&amp;diff=191&amp;oldid=prev"/>
		<updated>2019-03-17T18:43:59Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Но далеко не только это&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая версия&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия от 18:43, 17 марта 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l33&quot;&gt;Строка 33:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 33:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;К уязвимостям небезопасной загрузки файлов также можно относить уязвимости, связаные не с созданием загруженного файла на диске, а с его обработкой на сервере (или способом хранения). К примеру, изображение может загружаться на серевер и как-то обрабатываться (конвертироваться в другой формат например), после чего возвращаться клиенту или передаваться еще куда-то - и в софте, занимающимся обаботкой, может быть уязвимость. На диске на сервере оно может при этом не сохраняться вообще.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;К уязвимостям небезопасной загрузки файлов также можно относить уязвимости, связаные не с созданием загруженного файла на диске, а с его обработкой на сервере (или способом хранения). К примеру, изображение может загружаться на серевер и как-то обрабатываться (конвертироваться в другой формат например), после чего возвращаться клиенту или передаваться еще куда-то - и в софте, занимающимся обаботкой, может быть уязвимость. На диске на сервере оно может при этом не сохраняться вообще.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Больше &lt;/del&gt;про уязвимости загрузки файлов можно найти в [https://khashaev.ru/secsem/file-upload/slides.pdf этих отличных слайдах от Артура Хашаева]. [https://www.owasp.org/index.php/Unrestricted_File_Upload Вот про уязвимый file upload на OWASP].&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Еще инфу &lt;/ins&gt;про уязвимости загрузки файлов можно найти в [https://khashaev.ru/secsem/file-upload/slides.pdf этих отличных слайдах от Артура Хашаева]. [https://www.owasp.org/index.php/Unrestricted_File_Upload Вот про уязвимый file upload на OWASP].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Asterite</name></author>
	</entry>
	<entry>
		<id>https://course.secsem.ru/w/index.php?title=%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D1%83%D1%8E_%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(2019)/%D0%9D%D0%B5%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%B0%D1%8F_%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2&amp;diff=188&amp;oldid=prev</id>
		<title>Asterite: /* Но далеко не только это */</title>
		<link rel="alternate" type="text/html" href="https://course.secsem.ru/w/index.php?title=%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D1%83%D1%8E_%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(2019)/%D0%9D%D0%B5%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%B0%D1%8F_%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2&amp;diff=188&amp;oldid=prev"/>
		<updated>2019-03-17T18:12:28Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Но далеко не только это&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая версия&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия от 18:12, 17 марта 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l33&quot;&gt;Строка 33:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 33:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;К уязвимостям небезопасной загрузки файлов также можно относить уязвимости, связаные не с созданием загруженного файла на диске, а с его обработкой на сервере (или способом хранения). К примеру, изображение может загружаться на серевер и как-то обрабатываться (конвертироваться в другой формат например), после чего возвращаться клиенту или передаваться еще куда-то - и в софте, занимающимся обаботкой, может быть уязвимость. На диске на сервере оно может при этом не сохраняться вообще.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;К уязвимостям небезопасной загрузки файлов также можно относить уязвимости, связаные не с созданием загруженного файла на диске, а с его обработкой на сервере (или способом хранения). К примеру, изображение может загружаться на серевер и как-то обрабатываться (конвертироваться в другой формат например), после чего возвращаться клиенту или передаваться еще куда-то - и в софте, занимающимся обаботкой, может быть уязвимость. На диске на сервере оно может при этом не сохраняться вообще.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Больше про уязвимости загрузки файлов можно найти в [https://khashaev.ru/secsem/file-upload/slides.pdf этих отличных слайдах от Артура Хашаева]&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;, вот &lt;/del&gt;про&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Больше про уязвимости загрузки файлов можно найти в [https://khashaev.ru/secsem/file-upload/slides.pdf этих отличных слайдах от Артура Хашаева]&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;. [https://www.owasp.org/index.php/Unrestricted_File_Upload Вот &lt;/ins&gt;про &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;уязвимый file upload на OWASP].&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Asterite</name></author>
	</entry>
	<entry>
		<id>https://course.secsem.ru/w/index.php?title=%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D1%83%D1%8E_%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(2019)/%D0%9D%D0%B5%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%B0%D1%8F_%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2&amp;diff=187&amp;oldid=prev</id>
		<title>Asterite: /* PHP web shell */</title>
		<link rel="alternate" type="text/html" href="https://course.secsem.ru/w/index.php?title=%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D1%83%D1%8E_%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(2019)/%D0%9D%D0%B5%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%B0%D1%8F_%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2&amp;diff=187&amp;oldid=prev"/>
		<updated>2019-03-17T18:11:23Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;PHP web shell&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая версия&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия от 18:11, 17 марта 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l14&quot;&gt;Строка 14:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 14:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     system(&amp;quot;ls /&amp;quot;);&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     system(&amp;quot;ls /&amp;quot;);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;и, получив ссылку на него (к примеру, &amp;lt;code&amp;gt;/uploads/5c8e82bb8ad66/attack.php&amp;lt;/code&amp;gt;) обратится по ней, то в результате этот PHP-код выполнится и в ответе сервера будет произведение чисел 5 и 1451, а также список файлов в корневой директории сервера (функция PHP &amp;lt;code&amp;gt;system&amp;lt;/code&amp;gt; работает так же как одноимённая функция библиотеки Си - то есть выполняет команду shell. В итоге атакующий получает &#039;&#039;&#039;выполнение произвольного кода&#039;&#039;&#039; на сервере (&#039;&#039;&#039;RCE&#039;&#039;&#039;).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;и, получив ссылку на него (к примеру, &amp;lt;code&amp;gt;/uploads/5c8e82bb8ad66/attack.php&amp;lt;/code&amp;gt;) обратится по ней, то в результате этот PHP-код выполнится и в ответе сервера будет произведение чисел 5 и 1451, а также список файлов в корневой директории сервера (функция PHP &amp;lt;code&amp;gt;system&amp;lt;/code&amp;gt; работает так же как одноимённая функция библиотеки Си - то есть выполняет команду shell&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;)&lt;/ins&gt;. В итоге атакующий получает &#039;&#039;&#039;выполнение произвольного кода&#039;&#039;&#039; на сервере (&#039;&#039;&#039;RCE&#039;&#039;&#039;).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== Обход механизмов защиты ====&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== Обход механизмов защиты ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Asterite</name></author>
	</entry>
	<entry>
		<id>https://course.secsem.ru/w/index.php?title=%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D1%83%D1%8E_%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(2019)/%D0%9D%D0%B5%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%B0%D1%8F_%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2&amp;diff=186&amp;oldid=prev</id>
		<title>Asterite: /* PHP web shell */</title>
		<link rel="alternate" type="text/html" href="https://course.secsem.ru/w/index.php?title=%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D1%83%D1%8E_%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(2019)/%D0%9D%D0%B5%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%B0%D1%8F_%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2&amp;diff=186&amp;oldid=prev"/>
		<updated>2019-03-17T18:11:08Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;PHP web shell&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая версия&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия от 18:11, 17 марта 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l14&quot;&gt;Строка 14:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 14:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     system(&amp;quot;ls /&amp;quot;);&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     system(&amp;quot;ls /&amp;quot;);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;и, получив ссылку на него (к примеру, &amp;lt;code&amp;gt;/uploads/5c8e82bb8ad66/attack.php&amp;lt;/code&amp;gt;) обратится по ней, то в результате этот PHP-код выполнится и в ответе сервера будет произведение чисел 5 и 1451, а также список файлов в корневой директории сервера. В итоге атакующий получает &#039;&#039;&#039;выполнение произвольного кода&#039;&#039;&#039; на сервере (&#039;&#039;&#039;RCE&#039;&#039;&#039;).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;и, получив ссылку на него (к примеру, &amp;lt;code&amp;gt;/uploads/5c8e82bb8ad66/attack.php&amp;lt;/code&amp;gt;) обратится по ней, то в результате этот PHP-код выполнится и в ответе сервера будет произведение чисел 5 и 1451, а также список файлов в корневой директории сервера &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;(функция PHP &amp;lt;code&amp;gt;system&amp;lt;/code&amp;gt; работает так же как одноимённая функция библиотеки Си - то есть выполняет команду shell&lt;/ins&gt;. В итоге атакующий получает &#039;&#039;&#039;выполнение произвольного кода&#039;&#039;&#039; на сервере (&#039;&#039;&#039;RCE&#039;&#039;&#039;).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== Обход механизмов защиты ====&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== Обход механизмов защиты ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Asterite</name></author>
	</entry>
	<entry>
		<id>https://course.secsem.ru/w/index.php?title=%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D1%83%D1%8E_%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(2019)/%D0%9D%D0%B5%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%B0%D1%8F_%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2&amp;diff=185&amp;oldid=prev</id>
		<title>Asterite: Новая страница: «__NOTOC__ &#039;&#039;&#039;Загрузка файлов&#039;&#039;&#039; пользователями - довольно частая часть функциональности веб-пр…»</title>
		<link rel="alternate" type="text/html" href="https://course.secsem.ru/w/index.php?title=%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D1%83%D1%8E_%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(2019)/%D0%9D%D0%B5%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%B0%D1%8F_%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2&amp;diff=185&amp;oldid=prev"/>
		<updated>2019-03-17T18:08:42Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «__NOTOC__ &amp;#039;&amp;#039;&amp;#039;Загрузка файлов&amp;#039;&amp;#039;&amp;#039; пользователями - довольно частая часть функциональности веб-пр…»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;__NOTOC__&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Загрузка файлов&amp;#039;&amp;#039;&amp;#039; пользователями - довольно частая часть функциональности веб-приложения (аватарки, хостинг файлов, посылка вложений вместе с сообщениями и т. д.). Небезопасная реализация этого механизма может приводить к очень серьезным уязвимостям.&lt;br /&gt;
&lt;br /&gt;
== Создание загруженного файла на сервере ==&lt;br /&gt;
&lt;br /&gt;
Самый простой способ реализации механизма загрузки файлов - просто создавать на файловой системе сервера файл с таким же содержимым как файл, отправленый пользователем (проще говоря, &amp;quot;класть&amp;quot; присланный пользователем файл куда-то на файловую систему сервера). После загрузки файл либо доступен пользователю по прямой ссылке (т. е. определенные URL-адреса мапятся на загруженные файлы и существует URL, обращение к которому ведет к отдаче загруженного файла), либо как то еще обрабатывается веб-приложением. Само веб-приложение во многом состоит из файлов на диске, поэтому добавление файлов на сервер может быть небезопасным, так как (в общем случае) может изменить логику работы приложения.&lt;br /&gt;
&lt;br /&gt;
=== PHP web shell ===&lt;br /&gt;
&lt;br /&gt;
Простейшим примером является загрузка файла с расширением &amp;lt;code&amp;gt;.php&amp;lt;/code&amp;gt; на сайт, работающий на &amp;#039;&amp;#039;&amp;#039;PHP&amp;#039;&amp;#039;&amp;#039;. По умолчанию PHP-сайты работают так что пользователь обращается по URL к файлу (URL сайта, начиная с первого &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt;, мапятся на определенную директорию на сервере, она называется &amp;#039;&amp;#039;&amp;#039;web root&amp;#039;&amp;#039;&amp;#039;) и, если этот файл имеет расширение &amp;lt;code&amp;gt;php&amp;lt;/code&amp;gt; (или другое расширение из предопределенного списка расширений для PHP-файлов), то содержимое этого файла выполняется как код на PHP, вывод этого кода возвращается пользователю в ответе (кстати, так работает не только PHP, но и &amp;#039;&amp;#039;&amp;#039;ASP.NET Web Forms&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;JSP&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;ASP&amp;#039;&amp;#039;&amp;#039;). В результате, если пользователь может загрузить на сайт файл c расширением &amp;lt;code&amp;gt;.php&amp;lt;/code&amp;gt; и обратиться к нему по URL (т. е. этот файл будет создан где-то внутри &amp;#039;&amp;#039;&amp;#039;web root&amp;#039;&amp;#039;&amp;#039;), то, если сервер специально не настроен чтобы файлы из директории для загрузок не выполнялись, PHP-код в нём будет выполнен. Это можно попробовать на стенде http://fu.stands.course.secsem.ru - хотя сайт предназначен для загрузки изображений, если атакующий загрузит на него файл &amp;lt;code&amp;gt;attack.php&amp;lt;/code&amp;gt; c кодом&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;?php&lt;br /&gt;
    echo &amp;quot;5 * 1451 = &amp;quot;, 5 * 1451;&lt;br /&gt;
    echo &amp;quot; ls /: &amp;quot;;&lt;br /&gt;
    system(&amp;quot;ls /&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
и, получив ссылку на него (к примеру, &amp;lt;code&amp;gt;/uploads/5c8e82bb8ad66/attack.php&amp;lt;/code&amp;gt;) обратится по ней, то в результате этот PHP-код выполнится и в ответе сервера будет произведение чисел 5 и 1451, а также список файлов в корневой директории сервера. В итоге атакующий получает &amp;#039;&amp;#039;&amp;#039;выполнение произвольного кода&amp;#039;&amp;#039;&amp;#039; на сервере (&amp;#039;&amp;#039;&amp;#039;RCE&amp;#039;&amp;#039;&amp;#039;).&lt;br /&gt;
&lt;br /&gt;
==== Обход механизмов защиты ====&lt;br /&gt;
&lt;br /&gt;
Даже когда создатель сайта знает о возможной опасности и использует механизмы защиты, они могут оказаться неэффективными.&lt;br /&gt;
&lt;br /&gt;
Проверка типа файла &amp;#039;&amp;#039;&amp;#039;на клиенте&amp;#039;&amp;#039;&amp;#039; (т. е. в браузере) с помощью выставления типа атрибута &amp;lt;code&amp;gt;accept&amp;lt;/code&amp;gt; у file input или с помощью JavaScript-кода неэффективна просто потому что атакующий может не использовать браузер (а использовать вместо него тот же Burp Suite или скрипт на Питоне).&lt;br /&gt;
&lt;br /&gt;
Нередко запрещается загрузка &amp;quot;опасных&amp;quot; расширений , однако, во первых, черный список может быть неполным (кроме &amp;lt;code&amp;gt;php&amp;lt;/code&amp;gt; в качестве расширения для PHP-файлов распознаётся, как правило, &amp;lt;code&amp;gt;php3&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;php4&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;php5&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;pht&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;phtml&amp;lt;/code&amp;gt;) или проверка может тривиальным образом обходиться (например расширение &amp;lt;code&amp;gt;pHP&amp;lt;/code&amp;gt; может обойти чёрный список, но быть воспринятым как расширение PHP-скрипта сервером). Также, из-за особенностей конфигурации сервера файл может быть проинтерпретирован как PHP-скрипт когда &amp;lt;code&amp;gt;.php&amp;lt;/code&amp;gt; является &amp;#039;&amp;#039;&amp;#039;не последним&amp;#039;&amp;#039;&amp;#039; расширением (т. е. например &amp;lt;code&amp;gt;attk.php.jpg&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
Другим вариантом может быть проверка &amp;#039;&amp;#039;&amp;#039;содержимого&amp;#039;&amp;#039;&amp;#039; на то, относится ли оно к ожидаемому типу (скажем, изображению или видео). Однако, тут атакующему помогает то что PHP довольно толерантен к содержимому скриптов - PHP-код начинается с &amp;lt;code&amp;gt;&amp;lt;?php&amp;lt;/code&amp;gt; (или просто &amp;lt;code&amp;gt;&amp;lt;?&amp;lt;/code&amp;gt; если включена настройка &amp;lt;code&amp;gt;short_open_tag&amp;lt;/code&amp;gt;) и может заканчиваться на &amp;lt;code&amp;gt;?&amp;gt;&amp;lt;/code&amp;gt; - всё что находится за пределами этих маркеров (эдакого &amp;quot;тэга&amp;quot;) просто выдаётся в вывод as is без ошибок, какие бы байты там ни были.&lt;br /&gt;
В результате, PHP-скрипт может быть вполне валидной картинкой и, если где-то в середине неё встретится &amp;lt;code&amp;gt;&amp;lt;?php system(&amp;quot;echo ATTACK HERE&amp;quot;); ?&amp;gt;&amp;lt;/code&amp;gt;, этот код выполнится. Здесь атакующему может помешать то что в бинарном файле может просто случайно встретиться маркер начала PHP-кода, то что идет после него скорее всего не будет валидным PHP-кодом и выполнение упадёт с ошибкой. Для борьбы с этим можно стараться брать медиафайлы поменьше (чтобы снизить вероятность того что в них найдется определённая последовательность байт), ну и проверять их. Другая вещь, которая может осложнить эту атаку ещё больше - преобразование файла на сервере (resize картинки, пережатие видео) - однако, успешно атаковать бывает можно и в этих случаях.&lt;br /&gt;
&lt;br /&gt;
== Но далеко не только это ==&lt;br /&gt;
&lt;br /&gt;
Небезопасная загрузка файлов может быть далеко не только в PHP и упомянутых ASP.NET Web Forms/JSP/ASP, загрузить файлы с исходным кодом и добиться их выполнения бывает можно и в случае сайтов на &amp;#039;&amp;#039;&amp;#039;Python&amp;#039;&amp;#039;&amp;#039; и &amp;#039;&amp;#039;&amp;#039;JavaScript&amp;#039;&amp;#039;&amp;#039; и других платформ. Вообще, файлы с исходным кодом не являются единственным вектором атаки, другим вариантом является загрузка конфигурационных файлов, для того же PHP бывает можно загрузить конфигурационный файл &amp;lt;code&amp;gt;.htaccess&amp;lt;/code&amp;gt;, который позволяет внести изменения в конфигурацию сервера для данной директории, что в конечном итоге также даёт выполнение произвольного кода (точно так же в случае ASP.NET бывает можно загрузить конфигурационный файл &amp;lt;code&amp;gt;web.config&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
К уязвимостям небезопасной загрузки файлов также можно относить уязвимости, связаные не с созданием загруженного файла на диске, а с его обработкой на сервере (или способом хранения). К примеру, изображение может загружаться на серевер и как-то обрабатываться (конвертироваться в другой формат например), после чего возвращаться клиенту или передаваться еще куда-то - и в софте, занимающимся обаботкой, может быть уязвимость. На диске на сервере оно может при этом не сохраняться вообще.&lt;br /&gt;
&lt;br /&gt;
Больше про уязвимости загрузки файлов можно найти в [https://khashaev.ru/secsem/file-upload/slides.pdf этих отличных слайдах от Артура Хашаева], вот про&lt;/div&gt;</summary>
		<author><name>Asterite</name></author>
	</entry>
</feed>