Gebäude-Sicherheit-fähigen Web-Anwendungen

0
240
DOI: ESTE ARTIGO AINDA NÃO POSSUI DOI SOLICITAR AGORA!
PDF

PERES, Paulo Júnior de Jesus [1]

PINTO, Aurílio Guimarães [2]

FREITAS, Caio Guimarães [3]

LEITE, Francisco Canindé da Silva [4]

SILVA, Francisco Eronildo da [5]

OLIVEIRA, Geveson de Souza [6]

RIBEIRO, Dallas dos Santos [7]

ALMEIDA, Cristiany Caliri de [8]

MORAIS, Gilvanete Melo de [9]

PERES, Paulo Júnior de Jesus; et.al. Erstellen Sicherheit-fähigen Webanwendungen. Multidisziplinäre Kern Fachzeitschrift des Wissens. 07-Edition. 02 Jahr, Vol. 03. s. 44-51, Oktober 2017. ISSN: 0959-2448

Zusammenfassung

Mit dem Wachstum des Internets und Ihre zunehmende Verwendung als ein Mittel, um Dienste und Kommunikation zu bieten ist es notwendig, dass Entwickler von Web-Systemen so viel Aufmerksamkeit als Sicherheitsverfahren in der Entwicklung von Systemen. Es ist eine Tatsache, die eine sichere Webanwendung zu bauen ist eine sehr schwierige Aufgabe in der heutigen Zeit, denn ein System als sicher angesehen werden ausschließlich den Code durch den Programmierer, sondern auch Application-Server, Datenbank-Server, das Netzwerk der entwickelt hängt von Kommunikation und viele andere Dinge, die außerhalb der Reichweite von dem Entwickler des Systems. Vor diesem Hintergrund ist das Ziel dieses Artikels auf einen Verweis, der Hauptebenen von Angriffen von Hackern zu Codeschwachstellen von Web-Systemen und die Möglichkeiten der Prävention genutzt werden. In diesem Artikel verwendeten Begriffe können in einer beliebigen Programmiersprache verwendet werden, da die Theorien universell sind, aber zum Zwecke der Veranschaulichung der Codes geschrieben werden, in der PHP Programmiersprache, wie es derzeit einer der Programmiersprachen mehr ist der Gemeinschaft verteilt. In diesem Sinne kommt dieser Artikel mit der Gemeinschaft als eine schnelle Basis der Forschung zur Verhinderung der Angriffe auf Systeme beitragen.

1. Einführung

Im aktuellen Kontext ist es üblich, dass Unternehmen, öffentliche Einrichtungen und Institutionen suchen Agilität in der Verbreitung von Informationen für Kunden und Mitarbeiter, die den Entscheidungsprozess in diesem Medium agilizing. In Reihenfolge für diese Strategie zu arbeiten, ist es jedoch zwingend notwendig, dass gibt es Sicherheit in der Handhabung und Anzeige von Informationen in Bezug auf die Geschäftstätigkeit des Unternehmens.

In diesem Sinne kommt das Internet als Mittel zur Erleichterung und bieten solche Verteilung der Daten und Informationen. Diese Möglichkeit, virtuelle Commerce oder e-Commerce. Nach Teixeira:

In Brasilien hat z.z., 45,6 % der Bevölkerung Zugang zum Internet (etwa 90 Millionen Menschen). Wenn wir einen Vergleich zwischen den Jahren 2000 bis 2012 zu machen, wir sahen einen signifikanten Anstieg, ca. 1.500 %, die Zahl der Internetnutzer in Brasilien (TEIXEIRA, 2015, s. 19).

E-Commerce oder e-Commerce, nach Salvador (2013) kann definiert werden als Gewerbebetriebe gemacht in der virtuellen Umgebung, mit Hilfe elektronischer Mittel, d. h., ist in der Lage, ein bestimmtes Element zu Kilometer entfernt, ohne aus dem Haus oder im Büro zu kaufen, Smartphone, Computer oder andere Geräte verwenden. Wo sind die Bequemlichkeit, die Leichtigkeit des Zugangs und vor allem, durch die Verbraucher die Preise für e-Commerce angezogen.

Es ist jedoch notwendig, dass die Entwickler auf Informationssicherheit, beim entwickeln von Anwendungen für das Internet, achten da die Informationen alle Arten von Benutzern zur Verfügung steht. Nach Aguilar folgt dem Konzept der Sicherheit in der Informationstechnik:

Informationssicherheit bezieht sich auf den bestehenden Schutz der Informationen einer bestimmten Firma oder Person, das heißt, die Unternehmensinformationen über Menschen gelten. Information bedeutet jegliche Inhalte oder Daten, die Wert auf eine Organisation oder Person hat. Es kann für die Verwendung eingeschränkt oder ausgesetzt zur öffentlichen Konsultation oder Erwerb gespeichert werden. (AHMAD, 2008).

Laut Ferreira (2017), in diesem Universum der Möglichkeiten, die das Internet geworden ist, böswillige Benutzer haben die Möglichkeit, vertraulichen Informationen wie Bank-Passwörter zu stehlen:, vertrauliche Informationen, neben anderen Möglichkeiten.

Der Zweck dieses Artikels zeigen einige Techniken selbst verhindert Datendiebstahl oder Invasion von Systemen und Maßnahmen, um sicherzustellen, dass Entwickler von Systemen, die über das Internet (WEB DEVELOPEMENT) betreiben Verringerung der Anfälligkeit für sichere Systeme zu entwickeln Angriffe der verschiedenen Ebenen.

2. XSS (CROSS-SITE-SCRIPTING)

Zweite Flux (2017), die XSS tritt auf, wenn eine Web Anwendung nehmen schädliche Daten durch den Benutzer gesendet. Im Allgemeinen wird der Eindringling das Fehlen der Bosheit des Menschen nutzen, die die Webanwendung, bösartigen Code zu injizieren, der die Anwendung täuschen wird oder zum Sammeln von eingeschränkten Informationssystem entwickelt.

Ein Beispiel für diese Sicherheitsanfälligkeit ist in der Methode der Übertragung auf Get Variablen vom Typ (Variablen übergeben in der URL der Website) wie z. B.: http://www.igreja.com.br/mostar.php?site=sexo.php.

Dies kann einer echten Plage der Website generieren, da der böswillige Benutzer eine Website-Adresse oben, was Sie tun könnten, zum Beispiel passieren könnte, dass diese Seite als pornografische Website funktionieren würde.

Nach Flussmittel (2017) zu vermeiden, dass die Anwendung anfällig für diese Art von Angriff können als Maßnahmen ergriffen werden:

  • Mit Variablen vom Typ für sensible Daten ist kontraindiziert, weil es die Sicherheit des Systems beeinträchtigt;
  • Einsatz filtert in der Erfassung der Benutzerdaten für diesen Block jede Art von bösartigem Code oder URL wird durch externe Benutzer injiziert. Diese Filter können durch den Programmierer oder Fähigkeiten des Applikationsservers implementiert werden.

3. SQL-INJECTION

Nach Müller (2013) der Angriff über SQL-Injection ist die Injektion von SQL-Code in Variablen übergeben zu Web Forms und beliebigen SQL-Code in einer Webanwendung ausführen soll.

Dies ist eine sehr häufige und gefährliche Angriff, ein Beispiel ist das folgende Skript namens "remover.php", folgt die Transkription des Codes:

<? Php

$sql = "Löschen von Kunden wo Code =". $ _GE[‘codigo’]T;

Mysql_query ($sql) oder stirb (Mysql_error ());

?>

Analysieren das obige Skript, das folgende ist ein Beispiel für wie der böswillige Benutzer einen SQL-INJECTION-Angriff über URL durchführen kann: http://seusite.com.br/remover.php?codigo=666+OR+1. Auf diese Weise mit dieser Anweisung würde das Ergebnis alle Datensätze von Kunden Entität löschen.

Nach dem Online-Handbuch von PHP der sicherste Weg ist durch die Kontrolle der Typ der Variablen, die durch die Formulare-Felder, also als eine Form der Prävention empfangen werden, das folgende ist ein Beispiel für Code:

<? Php

SetType ($offset, "Integer");
$query = "SELECT Id, Name FROM Produkte ORDER BY name LIMIT 20 OFFSET $offset;";

Bitte beachten Sie, dass die %d in der Formatzeichenfolge %s verwenden wäre nutzlos
$query = Sprintf ("SELECT Id, Name von Produkte ORDER BY Name LIMIT 20 OFFSET % d;"
$offset);
?>

In den obigen Code hat die Funktion "Settype" die Funktion zu testen, ob die Variable erhalten ist wirklich vom Typ Integer, verhindern, dass bösartigen Code, die Schnipsel in die Variable aufgenommen werden.

4. Regulären Ausdruck Denial of Service (Geheimnisse würde bekannt gemacht werden)

Reguläre Ausdrücke (REGEX) beschreibt der Autor Focke (2017) als eine Technik zur Behandlung von Informationen von dem Benutzer Funktionen der Programmiersprache verwenden. Diese Funktionen versuchen, den Wert der Variablen zu kodieren, sodass sie nicht beschädigen oder das System umgehen.

Im Beispiel in der Programmiersprache ASP folgt:

<%

Dim variable
Variable = Sever. HtmlEncoder (Anfrage ("Var"))

%>

Folgt ein weiteres Beispiel für die Verwendung der Programmiersprache PHP:

<? Php
Wenn (! Ereg ("^[0-9,a-z,A-Z] (+)[.,_,-] [0-9,a-z,A-Z]((+))[@] [0-9,a-z,A-Z]* (+[.,_,-])[0-9,a-z,A-Z] ((+)[.]) [a-z,A-Z]* () {2,[0-9,a-z,A-Z]3} ()? $", $ _ POS ("Variable")) {}
Echo "ungültige Zeichen in das Feld e-Mail!";
}
?>

Nach Mattos (2013) um zu verhindern, dass diese Art von Angriff, ist es notwendig für den Entwickler, Capture Filter zur Korrektur der Fehler der Algorithmen laufen REGEX-Code-Standards durch die verwendete Programmiersprache zu erstellen.

5. CGI-ANWENDUNGEN

Zweite (2017) Common Gateway Interface (CGI) zu fördern, ist eine Art von Matalinguagem oder plattformunabhängige Middleware zur Verfügung gestellt von den Web-Servern, mit denen Sie zu Programme/Skripte aus einer URL. Diese Skripte sind in der Regel geschrieben in Perl, Shell, Tcl, Java, Python oder C (die meisten in interpretierte Sprachen geschrieben) und befindet sich in einem Verzeichnis/Cgi-bin.

CGI-Anwendungen, die ohne Pflege verursachen ernste Probleme für die Schwachstellen der Web-Server. Zweite Foster:

CGI-Programmierung unterscheidet sich von traditionellen Programmierung, im Allgemeinen durch Ihre Umgebung und Ihre Gateway-Funktion zwischen dem Client und dem Server, der landet in Sicherheitsaspekt (es sollte daran erinnert werden, dass diese Anwendungen in einem unsicheren Umfeld und das arbeiten viel zu beeinflussen, Theoretisch kann von jedermann ausgeführt werden). (Foster, 2017)

Ein CGI-Skript laufen unter der gleichen Web Server UID ist nicht unbedingt einen schlechten Anzug, aber wenn eine CGI-Anwendung eine Sicherheitslücke, die Angreifer zum Ausführen von Programmen unter UID des Webservers ermöglicht hat, es kann ein ernstes Problem auf Ihre Website. (Foster, 2017).

Zweite Person (2017), ist ein Weg, um dieses Problem über "Wrapper", d. h. Programme, bei denen andere verwandte Programme zu verändern, wie sie funktionieren. Weise in Umgebungen, wo Benutzer unabhängige CGI-Anwendungen zu schreiben, ist eine gute Strategie, um sie voneinander zu isolieren, d. h. Umsetzung Mechanismen in Ihrem Server so, dass der Zugang ein Benutzer des Skripts wird nicht mit Daten anderer Nutzer stören. SuEXEC (http://www2.idiscover.co.uk/apache/docs/suexec.html) löst dieses Problem (es gibt andere Tools, die auch dieses Problem behandeln) verursachen Anwendungen CGIs unter der UID des Benutzers selbst, das heißt, der Besitzer der CGI-Anwendung ausgeführt.

6. DATENTYP

Nach dem Online-Handbuch von PHP ist immer darauf geachtet werden muss, dass einige Programmiersprachen verwenden von globalen Variablen, die jede Art von Daten zu erfüllen. Dies ist falsch, weil es eine beträchtliche Ebene Schwachstelle im System verursacht.

Person (2017) beschreibt einige Beispiele des Überschreitens der Variablen in der Programmiersprache PHP:

<? Php

$cod = $ _GET / [‘cod’]/ Tipo bekommen

$cod = $ _ POST[‘cod’] / / post-Tipo

$cod = $ _ Sitzung[‘cod’] / / Tipo Sitzung

$cod = $ _ COOKIE[‘cod’] / / Tipo Cookie

?>

7. SCHREIBEN VON DATEIEN PER UPLOAD

Wenn Sie eine Datei über UPLOAD schreiben muss der Entwickler den Typ der Datei wird auf der Disc Aufnahme sicher. Beispielsweise kann eine Image-Datei einfach mit eine Validierung der Dateitypen behandelt werden. Und zwar deshalb, weil böswillige Benutzer Dateien senden können, die irgendwie die Server oder die Anwendung (Person, 2017) betreffen.

Nach der PHP Online-Handbuch folgt eine Validierung Beispiel für die Verwendung der Programmiersprache PHP:

<? Php

Function Type_up)

{

    überprüft, wenn der Mime-Typ der Image-Datei

    Wenn (! Eregi ("^ Bild / (Pjpeg | Jpeg Png Gif Bmp || |) $", $this-> Datei[“type”])) {}

        Return 0;

    } else {}

        1 zurück;

    }

}

?>

8. VERSICHERUNGSFORMULARE MIT TOKEN SYNCHONIZER

Laut Bragil (2017) ist Sincronizadora Stecker eine Technik, die verwendet eine Variable erstellt am Anfang der Sitzung mit einem Anfangswert gesetzt durch den Entwickler um sicherzustellen, dass das Formular tatsächlich von der Server-Anwendung erstellt wurde.

Nach Brasilien (2017), um eine Website mit Authentifizierung können Sie den Chip-Wert zum Zeitpunkt der Anmeldung zu beginnen, dann stellen Sie sicher, dass der Benutzer gültig ist:

Beispiel in PHP:

<?

Session_start ();

Sincronizadora Stecker mit einem zufälligen Wert initialisiert

$ _SESSION[“synctoken”] = Uniqid (Zeit ());

….

?>

Jetzt den Stecker Sincronizadora in Sitzung aufgezeichnet, können wir gewusst wie: Erstellen eines Formulars, geschützt durch ihr verdeutlichen:

<form name="frmteste" method="post" action="cadastro.php"></form>

<!– coloca todos os campos do formulário –>

<!– a nossa ficha fica como um campo hidden –>

<input type="hidden" name="token" value="<?=$_SESSION[“synctoken”]?>">

<div class="nicdark_archive1 nicdark_padding010" style="box-sizing:border-box;"><!–link pagination–></div>

Beachten Sie den Quellcode anzeigen, dass das VALUE-Attribut des Tokens einen zufälligen Wert Feld hat, geben Sie "45jfg58955699j96uy8gtj85". Synchronisierung geschieht beim Verarbeiten des Formulars. In unserem Beispiel ist die Aktion des Formulars die Datei "cadastro.php", wenn Sie die Formulardaten erhalten, wird testen, ob der Wert des Felds "TOKEN" des Formulars die Variable $ _SESSION Sitzung identisch is[“synctoken”]t. Wenn nicht, es ist ein Zeichen, dass jemand versucht zu tun, was sollte nicht, das heißt, es ist wahrscheinlich jemand, der die Seite mit dem Formular auf Ihrer Micro gespeichert und versucht, einige "Kunst" zu tun. In diesem Fall können Sie einige Schritte, wie man die Bürger sammeln, anzeigen, ein Satz einschüchternd, unter anderem. Wenn der Wert gleich ist, grünes Licht, können Sie mit der Bearbeitung (Bragil, 2017) fortsetzen.

Die Vorteile sind zahlreich, da dies eine einfache und effiziente Möglichkeit zur Erhöhung der Sicherheit eines Web-Systems.

Fazit

Im Web wurde entworfen, ohne viel Sorge, oder fast nicht sicher. Das Hauptziel war es, ein freundlicher Auskunft zur Zeit verfügbaren Ressourcen. Das schnelle Wachstum des Internets und die Diversifizierung Ihrer Nutzung wurde Sicherheit ein Punkt von entscheidender Bedeutung, insbesondere für das Web als eine der wichtigsten kommerziellen. In diesem Fall die Entwicklung ohne Sicherheit da einen entscheidenden Einfluss auf die Gewinne und über die Arbeit des Unternehmens.

Wir könnten anderen Fällen Invasion oder Unsicherheit bei der Entwicklung der Systeme nennen, aber wir nur die wesentlichen Punkte für eine sichere Entwicklung behandeln.

Schließlich, diese Arbeit ist voll ausgefahren, und anderer Autoren können dieses Artikels als Referenz verwenden, um die Menge von Angriffen und Verteidigungen von Software-Entwicklungsteams zu verwendenden erweitern.

Referenzen

Ahmad, Hong Keow. Sicherheit in der Informationstechnik (it). Abrufbar:< http://www.administradores.com.br/informe-se/artigos/seguranca-da-informacao-ti/23933/=""> </> abgerufen am 25. Oktober 2017.

Bragil, Roger. Formen mit Synchonizer Token sicherer. Abrufbar: < http://phpbrasil.com/artigo/z61mreuozqth/formularios-mais-seguros-com-synchonizer-token-ficha-sincronizadora=""> abgerufen am: 25. Oktober 2017.

Ferreira, Rodrigo. "Web Application Security". 1. Ed. São Paulo: Heimat des Codes. 2017. 156 p.

Flussmittel, Peter. XSS. < http://phpbrasil.com/articles/article.php/id/506="">Zugänglich gemacht: 20 Oct. von 17.

Focke, Erica. "REGEX CHECK FÜR FORMULARFELDER VERWENDEN". < http://phpbrasil.com/articles/article.php/id/520="">Zugänglich gemacht: 20 Oct. von 17.

Foster, Anthony. "Sicherheit in CGI-Skripten." < https://memoria.rnp.br/newsgen/9803/scripts.html="">. Zugegriffen am: 25. Oktober 2017.

Müller, Johannes Paul. "Sicherheit für Web-Entwickler". 1. Ed. São Paulo: Neue TEC. 2013. 416 p.

Salvador, Mauricio. "E-Commerce Manager1° Ed. São Paulo. Herausgeber: E-Commerce-Schule, 2013.

Teixeira, Tarcisio. E-Commerce: als Wahrzeichen Internet und bürgerliche Regulierung des elektronischen Geschäftsverkehrs in Brasilien. São Paulo: Saraiva, 2015.

Person, Márcio. "Sicherheit in PHP". 1 Ed. São Paulo: Neue Tec 2007. 152p.

"Cross-SITE Scripting (XSS)". Abrufbar: <http: br.ccm.net/contents/19-cross-site-scripting-xss="">zugegriffen: 20 Okt.</http:> von 17

"Das PHP Online-Handbuch". Abrufbar: <https: secure.php.net/manual/pt_br/security.database.sql-injection.php="">zugegriffen: 20 Okt.</https:> von 17.

[1] Abschluss in Informatik, es fungiert als einen öffentlichen Server auf SUFRAMA, als Administrative Analyst-Sie. Datenbank-Spezialist für ULBRA.

[2] Abschluss in Informatik, es fungiert als einen öffentlichen Server auf SUFRAMA, als Administrative Analyst-Sie.

[3] Abschluss in Informatik, es fungiert als einen öffentlichen Server auf SUFRAMA, als Administrative Analyst-Sie.

[4] Abschluss in Informatik, es fungiert als einen öffentlichen Server auf SUFRAMA, als Administrative Analyst-Sie.

[5] Abschluss in Informatik, es fungiert als einen öffentlichen Server auf SUFRAMA, als Administrative Analyst-Sie.

[6] Abschluss in Informatik, fungiert als Server SUFRAMA, als Administrative Analyst-Sie.

[7] Abschluss in Informatik, fungiert als Server SUFRAMA, als Administrative Analyst-Sie.

[8] Abschluss in Business Administration, fungiert als Beamter auf SUFRAMA, als Administrator.

[9] Studierte Wirtschaftswissenschaften, fungiert als Beamter auf SUFRAMA, als Ökonom.

DEIXE UMA RESPOSTA

Please enter your comment!
Please enter your name here