Dark Web e Malwares na internet, quanto custa?
Neste artigo irei descrever quanto custa, como é fácil encontrar e como é um exemplo básico de um malware vendido na Dark/Deep Web. Lembre-se, o intuito aqui não é incentivar ninguém a cometer esse tipo de crime, é de caráter informativo e muito mais para prevenção. Esta peça foi criada como pesquisa, não para ajudá-lo a se tornar um criminoso.
[ Hits: 5.679 ]
Por: Fabricio Santos Brasileiro em 04/02/2024
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class UserAuthentication {
public static void main(String[] args) {
String username = "admin'; DROP TABLE users; --";
String password = "password";
try {
// Establish database connection
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/mydatabase", "username", "password");
Statement statement = connection.createStatement();
// Construct the SQL query
String query = "SELECT * FROM users WHERE username='" + username + "' AND password='" + password + "'";
// Execute the query
ResultSet resultSet = statement.executeQuery(query);
// Check if a matching user was found
if (resultSet.next()) {
System.out.println("Authentication successful");
} else {
System.out.println("Authentication failed");
}
// Close database connections
resultSet.close();
statement.close();
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
Neste exemplo, o código é vulnerável a um ataque SQL INJECTION porque conecta diretamente a entrada fornecida pelo usuário (a variável de nome de usuário) na consulta do SQL sem sanitização ou parametrização adequada.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class UserAuthentication {
public static void main(String[] args) {
String username = "admin'; DROP TABLE users; --";
String password = "password";
try {
// Establish database connection
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/mydatabase", "username", "password");
PreparedStatement statement = connection.prepareStatement("SELECT * FROM users WHERE username=? AND password=?");
statement.setString(1, username);
statement.setString(2, password);
// Execute the query
ResultSet resultSet = statement.executeQuery();
// Check if a matching user was found
if (resultSet.next()) {
System.out.println("Authentication successful");
} else {
System.out.println("Authentication failed");
}
// Close database connections
resultSet.close();
statement.close();
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
Neste exemplo melhorado, são usadas instruções preparadas e a entrada do usuário é parametrizada definindo espaços reservados (?) e associando os valores apropriados à instrução.
Quebrando chave WEP - Wired Equivalent Privacy (parte 2)
Desligamento automático seletivo com apcupsd
Remover vírus do Windows usando pendrive com Linux
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como implementar Raid (0, 1, 5, 6, 10 e 50)
fusermount3 no Ubuntu 25.10 - mantenha o perfil do AppArmor
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Criação de diretórios e aplicação de restrições de acesso no Linux
Como programar um sistema de controle para distribuições linux em c? (0)
Compartilhar ZEBRA ZD220 na rede (2)
Como programar um software que seja utilizado para coleta de dados em ... (1)









