SCW图标
英雄背景无分隔线
博客

Coders Conquer Security: Share & Learn-Serie — Uneingeschränkte Datei-Uploads

Jaap Karan Singh
发布于 2019 年 1 月 10 日
最后更新于 2026年3月9日

Das Problem der uneingeschränkten Datei-Uploads ist kein Angriff an sich, sondern eine häufige Situation oder ein Zustand, der Angreifern den einfachen Zugriff auf Anwendungen und Netzwerkressourcen ermöglicht. Du kannst dir das so vorstellen, als würdest du in nasser Kleidung draußen in der Kälte herumlaufen. Das macht Sie zwar nicht unbedingt von alleine krank, aber es senkt Ihre Widerstandskraft bis zu einem Punkt, an dem jedes opportunistische Virus die Abwehrkräfte Ihres Körpers leicht überwältigt.

Im Bereich Cybersicherheit können Angreifer schnell jede Anwendung oder jedes Programm ausnutzen, das uneingeschränkte Datei-Uploads unterstützen darf. Und die Ergebnisse können verheerend sein. Clevere Angreifer können ihren uneingeschränkten Zugriff nutzen, um bösartige Dateien hochzuladen, Skripte zum Stehlen von Anmeldeinformationen einzurichten oder mithilfe der eigenen Berechtigungen einer Anwendung tiefere Angriffe auf ein Netzwerk zu starten. Selbst ein relativ unkomplizierter Angreifer könnte diese Art von uneingeschränktem Zugriff nutzen, um Denial-of-Service-Angriffe durchzuführen oder eine Anwendung zum Absturz zu bringen.

Zum Glück gibt es eine ganze Reihe von Möglichkeiten, das Problem der uneingeschränkten Datei-Uploads zu überwinden und potenzielle Angreifer zu stoppen. Zu diesem Zweck werden wir drei wichtige Aspekte von uneingeschränkten Datei-Uploads erörtern:

  • So funktionieren sie
  • Warum sie so gefährlich sind
  • Wie Sie Abwehrmechanismen einrichten können, um sie zu stoppen.

Wie nutzen Angriffe uneingeschränkte Datei-Uploads aus?

Es gibt viele Gründe, warum Websites der Öffentlichkeit das Hochladen von Dateien ermöglichen möchten. Vielleicht sucht ein Unternehmen nach Mitarbeitern und möchte ihnen ermöglichen, ihre Lebensläufe im Rahmen des Bewerbungsprozesses hochzuladen. Banken können Kunden dazu ermutigen, wichtige Unterlagen zu Hause auszufüllen, z. B. wenn sie einen Kredit oder ein neues Konto beantragen. Tourismus- oder Social-Media-Websites können Nutzer dazu auffordern, ihre Fotos hochzuladen, um sie mit anderen zu teilen.

Es gibt viele triftige Gründe, Dateiuploads zuzulassen. Und standardmäßig werden die meisten neuen Anwendungen wahrscheinlich jede Art von Datei-Upload ohne Einschränkungen zulassen. Das Problem beginnt, wenn ein potenzieller Angreifer feststellt, dass für diese Uploads keine Einschränkungen gelten.

Da Websites keine Einschränkungen für Uploads haben, sind sie drei Arten von Angriffen ausgesetzt. Ausgehend von der am wenigsten ausgeklügelten Variante kann ein böswilliger Benutzer einfach riesige Dateien hochladen, z. B. komprimierte Archive, die Hunderte von Gigabyte an Informationen enthalten. Dadurch wird nicht nur die Bandbreite eingeschränkt, sondern auch der der Anwendung zugewiesene Speicherplatz überlastet.

Als nächstes auf der berüchtigten Leiter steht ein Benutzer, der eine bösartige Datei wie einen Virus oder sogar etwas Unheimlicheres wie Ransomware hochlädt. Das ist wie der alte Aberglaube, dass man einen Vampir gezielt zu sich nach Hause einladen muss. Wenn du ein Schild aufhängst, auf dem steht, dass jeder frei reinkommen kann, ist das so, als ob du uneingeschränkte Datei-Uploads hast. Du kontrollierst nicht mehr, was durch deine Tür kommt, und du solltest wahrscheinlich damit rechnen, dass nicht jeder Besucher oder jede Datei gutartig ist. Einige von ihnen könnten Monster sein.

Schließlich kann ein erfahrener Angreifer uneingeschränkte Uploads verwenden, um in einem Netzwerk Fuß zu fassen und tiefere Angriffe durchzuführen. Da es keine Beschränkungen dafür gibt, was jemand hochladen kann, kann ein Angreifer seine eigene Webshell durch diesen Prozess schicken. Danach können sie Befehle an ihre Shell senden, und diese Befehle werden auf dem Server mit derselben Berechtigungsstufe wie die Anwendung ausgeführt.

Warum ist uneingeschränkter Dateizugriff so gefährlich?

Die Bereitstellung einer Anwendung mit uneingeschränktem Dateizugriff ist zwar nicht sofort gefährlich, aber es ist im Grunde so, als würde man eine Lücke in Ihrer Cybersicherheitsabwehr öffnen und jemanden einladen, Ihr Unternehmen anzugreifen. Früher oder später wird jemand antworten.

Auf der einfachsten Ebene benötigen Angreifer nicht einmal viel Geschick, um Chaos anzurichten. Das einfache Komprimieren und Hochladen extrem großer Dateien kann ausreichen, um gültigen Benutzern den Dienst zu verwehren. Im Laufe der Zeit kann es sogar zu einem Absturz der Anwendung oder einer ganzen Website kommen, je nachdem, wie die App programmiert und vernetzt ist.

Ein uneingeschränkter Dateizugriff kann auch Netzwerkfirewalls und andere Schutzmaßnahmen durchbrechen. Es spielt keine Rolle, ob Sie einen Scanner haben, der Ihre eingehenden E-Mails oder das Surfen Ihrer Mitarbeiter im Internet untersucht, wenn Sie einen Weg geschaffen haben, über den Angreifer Malware direkt in Ihr Kernnetzwerk hochladen können. Die Malware könnte die Anwendung oder sogar den Server, auf dem sie läuft, zum Absturz bringen, obwohl dies wahrscheinlich das bestmögliche Ergebnis ist. Im schlimmsten Fall kann ein wirklich bösartiges Programm wie Ransomware den infizierten Server nutzen, um sich auf das gesamte Netzwerk auszubreiten.

Erfahrenere Angreifer werden wahrscheinlich nicht so offensichtlich sein, wenn sie eine Anwendung mit uneingeschränktem Dateizugriff ausnutzen. Stattdessen können sie die Sicherheitslücke nutzen, um die Anwendung zu kompromittieren und diese nutzen, um tiefer in das Netzwerk einzudringen. Dabei bewegen sie sich langsam und versuchen, einer Entdeckung zu entgehen. Dazu können Sie eine Webshell oder eine andere EXE-Datei hochladen und nach der Landung Befehle direkt an die Datei senden. Alles, was der Benutzer über seine Shell ausführt, wird normalerweise vom Server ausgeführt, wobei die Berechtigungsstufen verwendet werden, die für die Anwendung festgelegt sind, die es hostet. Diese Befehle kommen von der Anwendung an den Server und werden wahrscheinlich nicht weiter überprüft oder untersucht.

All dies macht die Sicherheitsanfälligkeit für uneingeschränkten Dateizugriff zu einer der gefährlichsten Sicherheitslücken in Ihrem Netzwerk. Es ist wahrscheinlich nicht die Frage, ob es ein Problem geben wird, sondern wann.

Wie behebe ich die Sicherheitslücke „Uneingeschränkter Dateizugriff“?

Also, wie lösen Sie das Problem des uneingeschränkten Dateizugriffs? Am einfachsten ist es, einfach eine oder mehrere Einschränkungen für die Dateitypen hinzuzufügen, die hochgeladen werden können. Diese können dem Benutzer mitgeteilt werden, wenn Sie ihm beispielsweise mitteilen möchten, dass die Website nur Word- oder Textdateien akzeptiert, oder, falls es sich um eine Website zum Teilen von Bildern handelt, nur JPG- oder GIF-Dateien. Im Backend müssen Sie eine Whitelist mit akzeptablen Dateierweiterungen erstellen und dann alles andere ablehnen. Einschränkungen sollten auch für die maximale Länge von Dateinamen gelten. Wenn eine Datei Sonderzeichen im Namen enthält, die auf einen Versuch hinweisen könnten, einen ausführbaren Befehl auszulösen, sollte sie ebenfalls abgelehnt werden.

Zusätzlich zu den Dateitypen und Benennungsregeln sollten Sie auch die maximale Größe jeder Datei einschränken. Die maximale Größe sollte angemessen sein und dem Dateityp entsprechen, den die Anwendung voraussichtlich sammeln wird. Das könnte eine Obergrenze von etwa 10 Megabyte für Word-Dateien bedeuten und etwas mehr, vielleicht etwa 50 Megabyte, für Grafikdateien. Es ist auch möglich, Regeln für die Mindestdateigröße festzulegen, aber nur, wenn der Größenbereich der erwarteten Dateien bekannt ist, was der Fall sein kann, wenn Benutzer ein bestimmtes Formular ausfüllen und hochladen.

Angreifer finden möglicherweise immer noch einen cleveren Weg, um eine Shell oder ein anderes potenziell bösartiges Programm an den Dateityp- und Größenbeschränkungen vorbei zu schmuggeln. Um dies zu kompensieren, sollten gesammelte Dateien immer in einem privaten Verzeichnis ohne Ausführungsrechte gespeichert werden. Zur Erhöhung der Sicherheit können Dateien vom System in eine Reihe zufälliger Zeichen umbenannt werden. Dadurch würden unbefugte Benutzer von außerhalb des Netzwerks daran gehindert, nach dem Speicherort ihrer hochgeladenen Datei zu suchen, was ihnen Aufschluss über Ihr Netzwerk geben könnte. Wenn Sie das tun, müssen Sie jedoch wahrscheinlich eine Tabelle einrichten und verwalten, die die zufälligen Dateinamen mit ihren ursprünglichen Bezeichnungen verknüpft.

Schließlich sollte alles, was über einen Upload im Netzwerk ankommt, von allen Abwehrprogrammen, die das Unternehmen für diese Aufgaben verwendet, auf Malware und Viren gescannt werden. Dies fängt zwar nicht alles ab, ist aber eine wichtige Sicherheitsebene, mit der bis zu 90 Prozent oder mehr der häufigsten schädlichen Dateien erkannt werden können, die versuchen, per Datei-Upload einzudringen.

Einschränkung des Problems beim uneingeschränkten Datei-Upload

Sobald mehrere Sicherheitsebenen im Backend eingerichtet sind, ist das Problem des uneingeschränkten Datei-Uploads kein Problem mehr. Sie beheben das Problem im Grunde, indem Sie Einschränkungen für Ihre Datei-Uploads festlegen, sodass diese nicht mehr uneingeschränkt sind. Nur gute Dateien dürfen hineingelassen werden, während alle Vampire und Schadsoftware draußen gelassen werden.

Weitere Informationen finden Sie im OWASP Unrestricted File Upload Spickzettel zur Vorbeugung, in dem einige der häufigsten Probleme beschrieben werden, wenn eine solche Situation in einem Netzwerk zulässig ist. Sie können Ihr neu gewonnenes Defensivwissen auch auf die Probe stellen mit kostenlose Vitrine der Secure Code Warrior-Plattform, die Cybersicherheitsteams zu ultimativen Cyberkriegern ausbildet. Um mehr über die Beseitigung dieser Sicherheitslücke und eine Galerie mit anderen Bedrohungen zu erfahren, besuchen Sie die Blog von Secure Code Warrior.

Denken Sie, Sie sind bereit, diese Sicherheitslücke jetzt zu beheben? Begebt euch aufs Schlachtfeld und stellt eure Fähigkeiten auf die Probe:

查看资源
查看资源

Im Bereich Cybersicherheit können Angreifer schnell jede Anwendung oder jedes Programm ausnutzen, das uneingeschränkte Datei-Uploads unterstützen darf. Und die Ergebnisse können verheerend sein.

想了解更多吗?

Jaap Karan Singh ist Secure Coding Evangelist, Chief Singh und Mitbegründer von Secure Code Warrior.

了解更多

Secure Code Warrior 您的Secure Code Warrior 帮助您在整个软件开发周期中保障代码安全,并建立将网络安全置于首位的企业文化。无论您是应用安全经理、开发人员、首席信息安全官,还是其他从事安全工作的人员,我们都能协助您的企业降低不安全代码带来的风险。

预约演示
分享到:
领英品牌社交x 标志
作者
Jaap Karan Singh
发表于2019年1月10日

Jaap Karan Singh ist Secure Coding Evangelist, Chief Singh und Mitbegründer von Secure Code Warrior.

分享到:
领英品牌社交x 标志

Das Problem der uneingeschränkten Datei-Uploads ist kein Angriff an sich, sondern eine häufige Situation oder ein Zustand, der Angreifern den einfachen Zugriff auf Anwendungen und Netzwerkressourcen ermöglicht. Du kannst dir das so vorstellen, als würdest du in nasser Kleidung draußen in der Kälte herumlaufen. Das macht Sie zwar nicht unbedingt von alleine krank, aber es senkt Ihre Widerstandskraft bis zu einem Punkt, an dem jedes opportunistische Virus die Abwehrkräfte Ihres Körpers leicht überwältigt.

Im Bereich Cybersicherheit können Angreifer schnell jede Anwendung oder jedes Programm ausnutzen, das uneingeschränkte Datei-Uploads unterstützen darf. Und die Ergebnisse können verheerend sein. Clevere Angreifer können ihren uneingeschränkten Zugriff nutzen, um bösartige Dateien hochzuladen, Skripte zum Stehlen von Anmeldeinformationen einzurichten oder mithilfe der eigenen Berechtigungen einer Anwendung tiefere Angriffe auf ein Netzwerk zu starten. Selbst ein relativ unkomplizierter Angreifer könnte diese Art von uneingeschränktem Zugriff nutzen, um Denial-of-Service-Angriffe durchzuführen oder eine Anwendung zum Absturz zu bringen.

Zum Glück gibt es eine ganze Reihe von Möglichkeiten, das Problem der uneingeschränkten Datei-Uploads zu überwinden und potenzielle Angreifer zu stoppen. Zu diesem Zweck werden wir drei wichtige Aspekte von uneingeschränkten Datei-Uploads erörtern:

  • So funktionieren sie
  • Warum sie so gefährlich sind
  • Wie Sie Abwehrmechanismen einrichten können, um sie zu stoppen.

Wie nutzen Angriffe uneingeschränkte Datei-Uploads aus?

Es gibt viele Gründe, warum Websites der Öffentlichkeit das Hochladen von Dateien ermöglichen möchten. Vielleicht sucht ein Unternehmen nach Mitarbeitern und möchte ihnen ermöglichen, ihre Lebensläufe im Rahmen des Bewerbungsprozesses hochzuladen. Banken können Kunden dazu ermutigen, wichtige Unterlagen zu Hause auszufüllen, z. B. wenn sie einen Kredit oder ein neues Konto beantragen. Tourismus- oder Social-Media-Websites können Nutzer dazu auffordern, ihre Fotos hochzuladen, um sie mit anderen zu teilen.

Es gibt viele triftige Gründe, Dateiuploads zuzulassen. Und standardmäßig werden die meisten neuen Anwendungen wahrscheinlich jede Art von Datei-Upload ohne Einschränkungen zulassen. Das Problem beginnt, wenn ein potenzieller Angreifer feststellt, dass für diese Uploads keine Einschränkungen gelten.

Da Websites keine Einschränkungen für Uploads haben, sind sie drei Arten von Angriffen ausgesetzt. Ausgehend von der am wenigsten ausgeklügelten Variante kann ein böswilliger Benutzer einfach riesige Dateien hochladen, z. B. komprimierte Archive, die Hunderte von Gigabyte an Informationen enthalten. Dadurch wird nicht nur die Bandbreite eingeschränkt, sondern auch der der Anwendung zugewiesene Speicherplatz überlastet.

Als nächstes auf der berüchtigten Leiter steht ein Benutzer, der eine bösartige Datei wie einen Virus oder sogar etwas Unheimlicheres wie Ransomware hochlädt. Das ist wie der alte Aberglaube, dass man einen Vampir gezielt zu sich nach Hause einladen muss. Wenn du ein Schild aufhängst, auf dem steht, dass jeder frei reinkommen kann, ist das so, als ob du uneingeschränkte Datei-Uploads hast. Du kontrollierst nicht mehr, was durch deine Tür kommt, und du solltest wahrscheinlich damit rechnen, dass nicht jeder Besucher oder jede Datei gutartig ist. Einige von ihnen könnten Monster sein.

Schließlich kann ein erfahrener Angreifer uneingeschränkte Uploads verwenden, um in einem Netzwerk Fuß zu fassen und tiefere Angriffe durchzuführen. Da es keine Beschränkungen dafür gibt, was jemand hochladen kann, kann ein Angreifer seine eigene Webshell durch diesen Prozess schicken. Danach können sie Befehle an ihre Shell senden, und diese Befehle werden auf dem Server mit derselben Berechtigungsstufe wie die Anwendung ausgeführt.

Warum ist uneingeschränkter Dateizugriff so gefährlich?

Die Bereitstellung einer Anwendung mit uneingeschränktem Dateizugriff ist zwar nicht sofort gefährlich, aber es ist im Grunde so, als würde man eine Lücke in Ihrer Cybersicherheitsabwehr öffnen und jemanden einladen, Ihr Unternehmen anzugreifen. Früher oder später wird jemand antworten.

Auf der einfachsten Ebene benötigen Angreifer nicht einmal viel Geschick, um Chaos anzurichten. Das einfache Komprimieren und Hochladen extrem großer Dateien kann ausreichen, um gültigen Benutzern den Dienst zu verwehren. Im Laufe der Zeit kann es sogar zu einem Absturz der Anwendung oder einer ganzen Website kommen, je nachdem, wie die App programmiert und vernetzt ist.

Ein uneingeschränkter Dateizugriff kann auch Netzwerkfirewalls und andere Schutzmaßnahmen durchbrechen. Es spielt keine Rolle, ob Sie einen Scanner haben, der Ihre eingehenden E-Mails oder das Surfen Ihrer Mitarbeiter im Internet untersucht, wenn Sie einen Weg geschaffen haben, über den Angreifer Malware direkt in Ihr Kernnetzwerk hochladen können. Die Malware könnte die Anwendung oder sogar den Server, auf dem sie läuft, zum Absturz bringen, obwohl dies wahrscheinlich das bestmögliche Ergebnis ist. Im schlimmsten Fall kann ein wirklich bösartiges Programm wie Ransomware den infizierten Server nutzen, um sich auf das gesamte Netzwerk auszubreiten.

Erfahrenere Angreifer werden wahrscheinlich nicht so offensichtlich sein, wenn sie eine Anwendung mit uneingeschränktem Dateizugriff ausnutzen. Stattdessen können sie die Sicherheitslücke nutzen, um die Anwendung zu kompromittieren und diese nutzen, um tiefer in das Netzwerk einzudringen. Dabei bewegen sie sich langsam und versuchen, einer Entdeckung zu entgehen. Dazu können Sie eine Webshell oder eine andere EXE-Datei hochladen und nach der Landung Befehle direkt an die Datei senden. Alles, was der Benutzer über seine Shell ausführt, wird normalerweise vom Server ausgeführt, wobei die Berechtigungsstufen verwendet werden, die für die Anwendung festgelegt sind, die es hostet. Diese Befehle kommen von der Anwendung an den Server und werden wahrscheinlich nicht weiter überprüft oder untersucht.

All dies macht die Sicherheitsanfälligkeit für uneingeschränkten Dateizugriff zu einer der gefährlichsten Sicherheitslücken in Ihrem Netzwerk. Es ist wahrscheinlich nicht die Frage, ob es ein Problem geben wird, sondern wann.

Wie behebe ich die Sicherheitslücke „Uneingeschränkter Dateizugriff“?

Also, wie lösen Sie das Problem des uneingeschränkten Dateizugriffs? Am einfachsten ist es, einfach eine oder mehrere Einschränkungen für die Dateitypen hinzuzufügen, die hochgeladen werden können. Diese können dem Benutzer mitgeteilt werden, wenn Sie ihm beispielsweise mitteilen möchten, dass die Website nur Word- oder Textdateien akzeptiert, oder, falls es sich um eine Website zum Teilen von Bildern handelt, nur JPG- oder GIF-Dateien. Im Backend müssen Sie eine Whitelist mit akzeptablen Dateierweiterungen erstellen und dann alles andere ablehnen. Einschränkungen sollten auch für die maximale Länge von Dateinamen gelten. Wenn eine Datei Sonderzeichen im Namen enthält, die auf einen Versuch hinweisen könnten, einen ausführbaren Befehl auszulösen, sollte sie ebenfalls abgelehnt werden.

Zusätzlich zu den Dateitypen und Benennungsregeln sollten Sie auch die maximale Größe jeder Datei einschränken. Die maximale Größe sollte angemessen sein und dem Dateityp entsprechen, den die Anwendung voraussichtlich sammeln wird. Das könnte eine Obergrenze von etwa 10 Megabyte für Word-Dateien bedeuten und etwas mehr, vielleicht etwa 50 Megabyte, für Grafikdateien. Es ist auch möglich, Regeln für die Mindestdateigröße festzulegen, aber nur, wenn der Größenbereich der erwarteten Dateien bekannt ist, was der Fall sein kann, wenn Benutzer ein bestimmtes Formular ausfüllen und hochladen.

Angreifer finden möglicherweise immer noch einen cleveren Weg, um eine Shell oder ein anderes potenziell bösartiges Programm an den Dateityp- und Größenbeschränkungen vorbei zu schmuggeln. Um dies zu kompensieren, sollten gesammelte Dateien immer in einem privaten Verzeichnis ohne Ausführungsrechte gespeichert werden. Zur Erhöhung der Sicherheit können Dateien vom System in eine Reihe zufälliger Zeichen umbenannt werden. Dadurch würden unbefugte Benutzer von außerhalb des Netzwerks daran gehindert, nach dem Speicherort ihrer hochgeladenen Datei zu suchen, was ihnen Aufschluss über Ihr Netzwerk geben könnte. Wenn Sie das tun, müssen Sie jedoch wahrscheinlich eine Tabelle einrichten und verwalten, die die zufälligen Dateinamen mit ihren ursprünglichen Bezeichnungen verknüpft.

Schließlich sollte alles, was über einen Upload im Netzwerk ankommt, von allen Abwehrprogrammen, die das Unternehmen für diese Aufgaben verwendet, auf Malware und Viren gescannt werden. Dies fängt zwar nicht alles ab, ist aber eine wichtige Sicherheitsebene, mit der bis zu 90 Prozent oder mehr der häufigsten schädlichen Dateien erkannt werden können, die versuchen, per Datei-Upload einzudringen.

Einschränkung des Problems beim uneingeschränkten Datei-Upload

Sobald mehrere Sicherheitsebenen im Backend eingerichtet sind, ist das Problem des uneingeschränkten Datei-Uploads kein Problem mehr. Sie beheben das Problem im Grunde, indem Sie Einschränkungen für Ihre Datei-Uploads festlegen, sodass diese nicht mehr uneingeschränkt sind. Nur gute Dateien dürfen hineingelassen werden, während alle Vampire und Schadsoftware draußen gelassen werden.

Weitere Informationen finden Sie im OWASP Unrestricted File Upload Spickzettel zur Vorbeugung, in dem einige der häufigsten Probleme beschrieben werden, wenn eine solche Situation in einem Netzwerk zulässig ist. Sie können Ihr neu gewonnenes Defensivwissen auch auf die Probe stellen mit kostenlose Vitrine der Secure Code Warrior-Plattform, die Cybersicherheitsteams zu ultimativen Cyberkriegern ausbildet. Um mehr über die Beseitigung dieser Sicherheitslücke und eine Galerie mit anderen Bedrohungen zu erfahren, besuchen Sie die Blog von Secure Code Warrior.

Denken Sie, Sie sind bereit, diese Sicherheitslücke jetzt zu beheben? Begebt euch aufs Schlachtfeld und stellt eure Fähigkeiten auf die Probe:

查看资源
查看资源

请填写下方表格以下载报告

我们恳请您允许我们向您发送有关我们产品及/或安全编码相关主题的信息。我们将始终以最高标准谨慎处理您的个人数据,绝不会为营销目的将其出售给其他企业。

提交
scw 成功图标
SCW 错误图标
要提交表单,请启用“Analytics”Cookie。完成后,您可随时将其关闭。

Das Problem der uneingeschränkten Datei-Uploads ist kein Angriff an sich, sondern eine häufige Situation oder ein Zustand, der Angreifern den einfachen Zugriff auf Anwendungen und Netzwerkressourcen ermöglicht. Du kannst dir das so vorstellen, als würdest du in nasser Kleidung draußen in der Kälte herumlaufen. Das macht Sie zwar nicht unbedingt von alleine krank, aber es senkt Ihre Widerstandskraft bis zu einem Punkt, an dem jedes opportunistische Virus die Abwehrkräfte Ihres Körpers leicht überwältigt.

Im Bereich Cybersicherheit können Angreifer schnell jede Anwendung oder jedes Programm ausnutzen, das uneingeschränkte Datei-Uploads unterstützen darf. Und die Ergebnisse können verheerend sein. Clevere Angreifer können ihren uneingeschränkten Zugriff nutzen, um bösartige Dateien hochzuladen, Skripte zum Stehlen von Anmeldeinformationen einzurichten oder mithilfe der eigenen Berechtigungen einer Anwendung tiefere Angriffe auf ein Netzwerk zu starten. Selbst ein relativ unkomplizierter Angreifer könnte diese Art von uneingeschränktem Zugriff nutzen, um Denial-of-Service-Angriffe durchzuführen oder eine Anwendung zum Absturz zu bringen.

Zum Glück gibt es eine ganze Reihe von Möglichkeiten, das Problem der uneingeschränkten Datei-Uploads zu überwinden und potenzielle Angreifer zu stoppen. Zu diesem Zweck werden wir drei wichtige Aspekte von uneingeschränkten Datei-Uploads erörtern:

  • So funktionieren sie
  • Warum sie so gefährlich sind
  • Wie Sie Abwehrmechanismen einrichten können, um sie zu stoppen.

Wie nutzen Angriffe uneingeschränkte Datei-Uploads aus?

Es gibt viele Gründe, warum Websites der Öffentlichkeit das Hochladen von Dateien ermöglichen möchten. Vielleicht sucht ein Unternehmen nach Mitarbeitern und möchte ihnen ermöglichen, ihre Lebensläufe im Rahmen des Bewerbungsprozesses hochzuladen. Banken können Kunden dazu ermutigen, wichtige Unterlagen zu Hause auszufüllen, z. B. wenn sie einen Kredit oder ein neues Konto beantragen. Tourismus- oder Social-Media-Websites können Nutzer dazu auffordern, ihre Fotos hochzuladen, um sie mit anderen zu teilen.

Es gibt viele triftige Gründe, Dateiuploads zuzulassen. Und standardmäßig werden die meisten neuen Anwendungen wahrscheinlich jede Art von Datei-Upload ohne Einschränkungen zulassen. Das Problem beginnt, wenn ein potenzieller Angreifer feststellt, dass für diese Uploads keine Einschränkungen gelten.

Da Websites keine Einschränkungen für Uploads haben, sind sie drei Arten von Angriffen ausgesetzt. Ausgehend von der am wenigsten ausgeklügelten Variante kann ein böswilliger Benutzer einfach riesige Dateien hochladen, z. B. komprimierte Archive, die Hunderte von Gigabyte an Informationen enthalten. Dadurch wird nicht nur die Bandbreite eingeschränkt, sondern auch der der Anwendung zugewiesene Speicherplatz überlastet.

Als nächstes auf der berüchtigten Leiter steht ein Benutzer, der eine bösartige Datei wie einen Virus oder sogar etwas Unheimlicheres wie Ransomware hochlädt. Das ist wie der alte Aberglaube, dass man einen Vampir gezielt zu sich nach Hause einladen muss. Wenn du ein Schild aufhängst, auf dem steht, dass jeder frei reinkommen kann, ist das so, als ob du uneingeschränkte Datei-Uploads hast. Du kontrollierst nicht mehr, was durch deine Tür kommt, und du solltest wahrscheinlich damit rechnen, dass nicht jeder Besucher oder jede Datei gutartig ist. Einige von ihnen könnten Monster sein.

Schließlich kann ein erfahrener Angreifer uneingeschränkte Uploads verwenden, um in einem Netzwerk Fuß zu fassen und tiefere Angriffe durchzuführen. Da es keine Beschränkungen dafür gibt, was jemand hochladen kann, kann ein Angreifer seine eigene Webshell durch diesen Prozess schicken. Danach können sie Befehle an ihre Shell senden, und diese Befehle werden auf dem Server mit derselben Berechtigungsstufe wie die Anwendung ausgeführt.

Warum ist uneingeschränkter Dateizugriff so gefährlich?

Die Bereitstellung einer Anwendung mit uneingeschränktem Dateizugriff ist zwar nicht sofort gefährlich, aber es ist im Grunde so, als würde man eine Lücke in Ihrer Cybersicherheitsabwehr öffnen und jemanden einladen, Ihr Unternehmen anzugreifen. Früher oder später wird jemand antworten.

Auf der einfachsten Ebene benötigen Angreifer nicht einmal viel Geschick, um Chaos anzurichten. Das einfache Komprimieren und Hochladen extrem großer Dateien kann ausreichen, um gültigen Benutzern den Dienst zu verwehren. Im Laufe der Zeit kann es sogar zu einem Absturz der Anwendung oder einer ganzen Website kommen, je nachdem, wie die App programmiert und vernetzt ist.

Ein uneingeschränkter Dateizugriff kann auch Netzwerkfirewalls und andere Schutzmaßnahmen durchbrechen. Es spielt keine Rolle, ob Sie einen Scanner haben, der Ihre eingehenden E-Mails oder das Surfen Ihrer Mitarbeiter im Internet untersucht, wenn Sie einen Weg geschaffen haben, über den Angreifer Malware direkt in Ihr Kernnetzwerk hochladen können. Die Malware könnte die Anwendung oder sogar den Server, auf dem sie läuft, zum Absturz bringen, obwohl dies wahrscheinlich das bestmögliche Ergebnis ist. Im schlimmsten Fall kann ein wirklich bösartiges Programm wie Ransomware den infizierten Server nutzen, um sich auf das gesamte Netzwerk auszubreiten.

Erfahrenere Angreifer werden wahrscheinlich nicht so offensichtlich sein, wenn sie eine Anwendung mit uneingeschränktem Dateizugriff ausnutzen. Stattdessen können sie die Sicherheitslücke nutzen, um die Anwendung zu kompromittieren und diese nutzen, um tiefer in das Netzwerk einzudringen. Dabei bewegen sie sich langsam und versuchen, einer Entdeckung zu entgehen. Dazu können Sie eine Webshell oder eine andere EXE-Datei hochladen und nach der Landung Befehle direkt an die Datei senden. Alles, was der Benutzer über seine Shell ausführt, wird normalerweise vom Server ausgeführt, wobei die Berechtigungsstufen verwendet werden, die für die Anwendung festgelegt sind, die es hostet. Diese Befehle kommen von der Anwendung an den Server und werden wahrscheinlich nicht weiter überprüft oder untersucht.

All dies macht die Sicherheitsanfälligkeit für uneingeschränkten Dateizugriff zu einer der gefährlichsten Sicherheitslücken in Ihrem Netzwerk. Es ist wahrscheinlich nicht die Frage, ob es ein Problem geben wird, sondern wann.

Wie behebe ich die Sicherheitslücke „Uneingeschränkter Dateizugriff“?

Also, wie lösen Sie das Problem des uneingeschränkten Dateizugriffs? Am einfachsten ist es, einfach eine oder mehrere Einschränkungen für die Dateitypen hinzuzufügen, die hochgeladen werden können. Diese können dem Benutzer mitgeteilt werden, wenn Sie ihm beispielsweise mitteilen möchten, dass die Website nur Word- oder Textdateien akzeptiert, oder, falls es sich um eine Website zum Teilen von Bildern handelt, nur JPG- oder GIF-Dateien. Im Backend müssen Sie eine Whitelist mit akzeptablen Dateierweiterungen erstellen und dann alles andere ablehnen. Einschränkungen sollten auch für die maximale Länge von Dateinamen gelten. Wenn eine Datei Sonderzeichen im Namen enthält, die auf einen Versuch hinweisen könnten, einen ausführbaren Befehl auszulösen, sollte sie ebenfalls abgelehnt werden.

Zusätzlich zu den Dateitypen und Benennungsregeln sollten Sie auch die maximale Größe jeder Datei einschränken. Die maximale Größe sollte angemessen sein und dem Dateityp entsprechen, den die Anwendung voraussichtlich sammeln wird. Das könnte eine Obergrenze von etwa 10 Megabyte für Word-Dateien bedeuten und etwas mehr, vielleicht etwa 50 Megabyte, für Grafikdateien. Es ist auch möglich, Regeln für die Mindestdateigröße festzulegen, aber nur, wenn der Größenbereich der erwarteten Dateien bekannt ist, was der Fall sein kann, wenn Benutzer ein bestimmtes Formular ausfüllen und hochladen.

Angreifer finden möglicherweise immer noch einen cleveren Weg, um eine Shell oder ein anderes potenziell bösartiges Programm an den Dateityp- und Größenbeschränkungen vorbei zu schmuggeln. Um dies zu kompensieren, sollten gesammelte Dateien immer in einem privaten Verzeichnis ohne Ausführungsrechte gespeichert werden. Zur Erhöhung der Sicherheit können Dateien vom System in eine Reihe zufälliger Zeichen umbenannt werden. Dadurch würden unbefugte Benutzer von außerhalb des Netzwerks daran gehindert, nach dem Speicherort ihrer hochgeladenen Datei zu suchen, was ihnen Aufschluss über Ihr Netzwerk geben könnte. Wenn Sie das tun, müssen Sie jedoch wahrscheinlich eine Tabelle einrichten und verwalten, die die zufälligen Dateinamen mit ihren ursprünglichen Bezeichnungen verknüpft.

Schließlich sollte alles, was über einen Upload im Netzwerk ankommt, von allen Abwehrprogrammen, die das Unternehmen für diese Aufgaben verwendet, auf Malware und Viren gescannt werden. Dies fängt zwar nicht alles ab, ist aber eine wichtige Sicherheitsebene, mit der bis zu 90 Prozent oder mehr der häufigsten schädlichen Dateien erkannt werden können, die versuchen, per Datei-Upload einzudringen.

Einschränkung des Problems beim uneingeschränkten Datei-Upload

Sobald mehrere Sicherheitsebenen im Backend eingerichtet sind, ist das Problem des uneingeschränkten Datei-Uploads kein Problem mehr. Sie beheben das Problem im Grunde, indem Sie Einschränkungen für Ihre Datei-Uploads festlegen, sodass diese nicht mehr uneingeschränkt sind. Nur gute Dateien dürfen hineingelassen werden, während alle Vampire und Schadsoftware draußen gelassen werden.

Weitere Informationen finden Sie im OWASP Unrestricted File Upload Spickzettel zur Vorbeugung, in dem einige der häufigsten Probleme beschrieben werden, wenn eine solche Situation in einem Netzwerk zulässig ist. Sie können Ihr neu gewonnenes Defensivwissen auch auf die Probe stellen mit kostenlose Vitrine der Secure Code Warrior-Plattform, die Cybersicherheitsteams zu ultimativen Cyberkriegern ausbildet. Um mehr über die Beseitigung dieser Sicherheitslücke und eine Galerie mit anderen Bedrohungen zu erfahren, besuchen Sie die Blog von Secure Code Warrior.

Denken Sie, Sie sind bereit, diese Sicherheitslücke jetzt zu beheben? Begebt euch aufs Schlachtfeld und stellt eure Fähigkeiten auf die Probe:

观看网络研讨会
开始吧
了解更多

请点击下方链接下载该资源的PDF文件。

Secure Code Warrior 您的Secure Code Warrior 帮助您在整个软件开发周期中保障代码安全,并建立将网络安全置于首位的企业文化。无论您是应用安全经理、开发人员、首席信息安全官,还是其他从事安全工作的人员,我们都能协助您的企业降低不安全代码带来的风险。

查看报告预约演示
下载PDF文件
查看资源
分享到:
领英品牌社交x 标志
想了解更多吗?

分享到:
领英品牌社交x 标志
作者
Jaap Karan Singh
发表于2019年1月10日

Jaap Karan Singh ist Secure Coding Evangelist, Chief Singh und Mitbegründer von Secure Code Warrior.

分享到:
领英品牌社交x 标志

Das Problem der uneingeschränkten Datei-Uploads ist kein Angriff an sich, sondern eine häufige Situation oder ein Zustand, der Angreifern den einfachen Zugriff auf Anwendungen und Netzwerkressourcen ermöglicht. Du kannst dir das so vorstellen, als würdest du in nasser Kleidung draußen in der Kälte herumlaufen. Das macht Sie zwar nicht unbedingt von alleine krank, aber es senkt Ihre Widerstandskraft bis zu einem Punkt, an dem jedes opportunistische Virus die Abwehrkräfte Ihres Körpers leicht überwältigt.

Im Bereich Cybersicherheit können Angreifer schnell jede Anwendung oder jedes Programm ausnutzen, das uneingeschränkte Datei-Uploads unterstützen darf. Und die Ergebnisse können verheerend sein. Clevere Angreifer können ihren uneingeschränkten Zugriff nutzen, um bösartige Dateien hochzuladen, Skripte zum Stehlen von Anmeldeinformationen einzurichten oder mithilfe der eigenen Berechtigungen einer Anwendung tiefere Angriffe auf ein Netzwerk zu starten. Selbst ein relativ unkomplizierter Angreifer könnte diese Art von uneingeschränktem Zugriff nutzen, um Denial-of-Service-Angriffe durchzuführen oder eine Anwendung zum Absturz zu bringen.

Zum Glück gibt es eine ganze Reihe von Möglichkeiten, das Problem der uneingeschränkten Datei-Uploads zu überwinden und potenzielle Angreifer zu stoppen. Zu diesem Zweck werden wir drei wichtige Aspekte von uneingeschränkten Datei-Uploads erörtern:

  • So funktionieren sie
  • Warum sie so gefährlich sind
  • Wie Sie Abwehrmechanismen einrichten können, um sie zu stoppen.

Wie nutzen Angriffe uneingeschränkte Datei-Uploads aus?

Es gibt viele Gründe, warum Websites der Öffentlichkeit das Hochladen von Dateien ermöglichen möchten. Vielleicht sucht ein Unternehmen nach Mitarbeitern und möchte ihnen ermöglichen, ihre Lebensläufe im Rahmen des Bewerbungsprozesses hochzuladen. Banken können Kunden dazu ermutigen, wichtige Unterlagen zu Hause auszufüllen, z. B. wenn sie einen Kredit oder ein neues Konto beantragen. Tourismus- oder Social-Media-Websites können Nutzer dazu auffordern, ihre Fotos hochzuladen, um sie mit anderen zu teilen.

Es gibt viele triftige Gründe, Dateiuploads zuzulassen. Und standardmäßig werden die meisten neuen Anwendungen wahrscheinlich jede Art von Datei-Upload ohne Einschränkungen zulassen. Das Problem beginnt, wenn ein potenzieller Angreifer feststellt, dass für diese Uploads keine Einschränkungen gelten.

Da Websites keine Einschränkungen für Uploads haben, sind sie drei Arten von Angriffen ausgesetzt. Ausgehend von der am wenigsten ausgeklügelten Variante kann ein böswilliger Benutzer einfach riesige Dateien hochladen, z. B. komprimierte Archive, die Hunderte von Gigabyte an Informationen enthalten. Dadurch wird nicht nur die Bandbreite eingeschränkt, sondern auch der der Anwendung zugewiesene Speicherplatz überlastet.

Als nächstes auf der berüchtigten Leiter steht ein Benutzer, der eine bösartige Datei wie einen Virus oder sogar etwas Unheimlicheres wie Ransomware hochlädt. Das ist wie der alte Aberglaube, dass man einen Vampir gezielt zu sich nach Hause einladen muss. Wenn du ein Schild aufhängst, auf dem steht, dass jeder frei reinkommen kann, ist das so, als ob du uneingeschränkte Datei-Uploads hast. Du kontrollierst nicht mehr, was durch deine Tür kommt, und du solltest wahrscheinlich damit rechnen, dass nicht jeder Besucher oder jede Datei gutartig ist. Einige von ihnen könnten Monster sein.

Schließlich kann ein erfahrener Angreifer uneingeschränkte Uploads verwenden, um in einem Netzwerk Fuß zu fassen und tiefere Angriffe durchzuführen. Da es keine Beschränkungen dafür gibt, was jemand hochladen kann, kann ein Angreifer seine eigene Webshell durch diesen Prozess schicken. Danach können sie Befehle an ihre Shell senden, und diese Befehle werden auf dem Server mit derselben Berechtigungsstufe wie die Anwendung ausgeführt.

Warum ist uneingeschränkter Dateizugriff so gefährlich?

Die Bereitstellung einer Anwendung mit uneingeschränktem Dateizugriff ist zwar nicht sofort gefährlich, aber es ist im Grunde so, als würde man eine Lücke in Ihrer Cybersicherheitsabwehr öffnen und jemanden einladen, Ihr Unternehmen anzugreifen. Früher oder später wird jemand antworten.

Auf der einfachsten Ebene benötigen Angreifer nicht einmal viel Geschick, um Chaos anzurichten. Das einfache Komprimieren und Hochladen extrem großer Dateien kann ausreichen, um gültigen Benutzern den Dienst zu verwehren. Im Laufe der Zeit kann es sogar zu einem Absturz der Anwendung oder einer ganzen Website kommen, je nachdem, wie die App programmiert und vernetzt ist.

Ein uneingeschränkter Dateizugriff kann auch Netzwerkfirewalls und andere Schutzmaßnahmen durchbrechen. Es spielt keine Rolle, ob Sie einen Scanner haben, der Ihre eingehenden E-Mails oder das Surfen Ihrer Mitarbeiter im Internet untersucht, wenn Sie einen Weg geschaffen haben, über den Angreifer Malware direkt in Ihr Kernnetzwerk hochladen können. Die Malware könnte die Anwendung oder sogar den Server, auf dem sie läuft, zum Absturz bringen, obwohl dies wahrscheinlich das bestmögliche Ergebnis ist. Im schlimmsten Fall kann ein wirklich bösartiges Programm wie Ransomware den infizierten Server nutzen, um sich auf das gesamte Netzwerk auszubreiten.

Erfahrenere Angreifer werden wahrscheinlich nicht so offensichtlich sein, wenn sie eine Anwendung mit uneingeschränktem Dateizugriff ausnutzen. Stattdessen können sie die Sicherheitslücke nutzen, um die Anwendung zu kompromittieren und diese nutzen, um tiefer in das Netzwerk einzudringen. Dabei bewegen sie sich langsam und versuchen, einer Entdeckung zu entgehen. Dazu können Sie eine Webshell oder eine andere EXE-Datei hochladen und nach der Landung Befehle direkt an die Datei senden. Alles, was der Benutzer über seine Shell ausführt, wird normalerweise vom Server ausgeführt, wobei die Berechtigungsstufen verwendet werden, die für die Anwendung festgelegt sind, die es hostet. Diese Befehle kommen von der Anwendung an den Server und werden wahrscheinlich nicht weiter überprüft oder untersucht.

All dies macht die Sicherheitsanfälligkeit für uneingeschränkten Dateizugriff zu einer der gefährlichsten Sicherheitslücken in Ihrem Netzwerk. Es ist wahrscheinlich nicht die Frage, ob es ein Problem geben wird, sondern wann.

Wie behebe ich die Sicherheitslücke „Uneingeschränkter Dateizugriff“?

Also, wie lösen Sie das Problem des uneingeschränkten Dateizugriffs? Am einfachsten ist es, einfach eine oder mehrere Einschränkungen für die Dateitypen hinzuzufügen, die hochgeladen werden können. Diese können dem Benutzer mitgeteilt werden, wenn Sie ihm beispielsweise mitteilen möchten, dass die Website nur Word- oder Textdateien akzeptiert, oder, falls es sich um eine Website zum Teilen von Bildern handelt, nur JPG- oder GIF-Dateien. Im Backend müssen Sie eine Whitelist mit akzeptablen Dateierweiterungen erstellen und dann alles andere ablehnen. Einschränkungen sollten auch für die maximale Länge von Dateinamen gelten. Wenn eine Datei Sonderzeichen im Namen enthält, die auf einen Versuch hinweisen könnten, einen ausführbaren Befehl auszulösen, sollte sie ebenfalls abgelehnt werden.

Zusätzlich zu den Dateitypen und Benennungsregeln sollten Sie auch die maximale Größe jeder Datei einschränken. Die maximale Größe sollte angemessen sein und dem Dateityp entsprechen, den die Anwendung voraussichtlich sammeln wird. Das könnte eine Obergrenze von etwa 10 Megabyte für Word-Dateien bedeuten und etwas mehr, vielleicht etwa 50 Megabyte, für Grafikdateien. Es ist auch möglich, Regeln für die Mindestdateigröße festzulegen, aber nur, wenn der Größenbereich der erwarteten Dateien bekannt ist, was der Fall sein kann, wenn Benutzer ein bestimmtes Formular ausfüllen und hochladen.

Angreifer finden möglicherweise immer noch einen cleveren Weg, um eine Shell oder ein anderes potenziell bösartiges Programm an den Dateityp- und Größenbeschränkungen vorbei zu schmuggeln. Um dies zu kompensieren, sollten gesammelte Dateien immer in einem privaten Verzeichnis ohne Ausführungsrechte gespeichert werden. Zur Erhöhung der Sicherheit können Dateien vom System in eine Reihe zufälliger Zeichen umbenannt werden. Dadurch würden unbefugte Benutzer von außerhalb des Netzwerks daran gehindert, nach dem Speicherort ihrer hochgeladenen Datei zu suchen, was ihnen Aufschluss über Ihr Netzwerk geben könnte. Wenn Sie das tun, müssen Sie jedoch wahrscheinlich eine Tabelle einrichten und verwalten, die die zufälligen Dateinamen mit ihren ursprünglichen Bezeichnungen verknüpft.

Schließlich sollte alles, was über einen Upload im Netzwerk ankommt, von allen Abwehrprogrammen, die das Unternehmen für diese Aufgaben verwendet, auf Malware und Viren gescannt werden. Dies fängt zwar nicht alles ab, ist aber eine wichtige Sicherheitsebene, mit der bis zu 90 Prozent oder mehr der häufigsten schädlichen Dateien erkannt werden können, die versuchen, per Datei-Upload einzudringen.

Einschränkung des Problems beim uneingeschränkten Datei-Upload

Sobald mehrere Sicherheitsebenen im Backend eingerichtet sind, ist das Problem des uneingeschränkten Datei-Uploads kein Problem mehr. Sie beheben das Problem im Grunde, indem Sie Einschränkungen für Ihre Datei-Uploads festlegen, sodass diese nicht mehr uneingeschränkt sind. Nur gute Dateien dürfen hineingelassen werden, während alle Vampire und Schadsoftware draußen gelassen werden.

Weitere Informationen finden Sie im OWASP Unrestricted File Upload Spickzettel zur Vorbeugung, in dem einige der häufigsten Probleme beschrieben werden, wenn eine solche Situation in einem Netzwerk zulässig ist. Sie können Ihr neu gewonnenes Defensivwissen auch auf die Probe stellen mit kostenlose Vitrine der Secure Code Warrior-Plattform, die Cybersicherheitsteams zu ultimativen Cyberkriegern ausbildet. Um mehr über die Beseitigung dieser Sicherheitslücke und eine Galerie mit anderen Bedrohungen zu erfahren, besuchen Sie die Blog von Secure Code Warrior.

Denken Sie, Sie sind bereit, diese Sicherheitslücke jetzt zu beheben? Begebt euch aufs Schlachtfeld und stellt eure Fähigkeiten auf die Probe:

目录

下载PDF文件
查看资源
想了解更多吗?

Jaap Karan Singh ist Secure Coding Evangelist, Chief Singh und Mitbegründer von Secure Code Warrior.

了解更多

Secure Code Warrior 您的Secure Code Warrior 帮助您在整个软件开发周期中保障代码安全,并建立将网络安全置于首位的企业文化。无论您是应用安全经理、开发人员、首席信息安全官,还是其他从事安全工作的人员,我们都能协助您的企业降低不安全代码带来的风险。

预约演示下载
分享到:
领英品牌社交x 标志
资源中心

入门资源

更多文章
资源中心

入门资源

更多文章