Архив метки: Java

Что нового в Java 10: часть вторая

Java 10 уже не за горами, а именно её обещают выпустить уже совсем скоро в марте. В новой версии Java нас ждет довольно много улучшений в JVM. Но кажется, что все в основном заинтересованы лишь в одном нововведении в самом языке, а именно новом слове “var”. Помимо улучшений языка и виртуальной машины Java 10 содержит еще одно нововведение, которое совместно с новой моделью релизов Java наделало много шуму в сообществе любителей Java.

Итак, представляем вашему вниманию краткий обзор остатков больших изменений в Java 10, которые не были рассмотрены в предыдущей статье. Наслаждайтесь!

Java

Читать далее

Что нового в Java 10: часть первая

Java 10 должна увидеть свет в марте 2018. Это будет следующий большой short-term release после Java 9, которая была выпущена недавно в сентябре 2017.

После того как конце 2017-го года я покинул Java Team в Oracle и переехал на другую сторону Атлантического океана, я обещал себе под Новый Год, что буду стараться следить за тем, что происходит с Javа. Ну хотя бы в 2018-м году.

Так как Java 10 уже не за горами, то самое время взглянуть на JEP’ы (Java Enhancement Proposal), которые запланированы в Java 10. Вот краткий обзор больших изменений в Java 10. Наслаждайтесь!

English version is here.

Java

Читать далее

Запуск Java вместе с AddressSanitizer

OpenJDK и AddressSanitizer довольно известные open-source проекты. OpenJDK содержит код на C/C++, который в отличие от кода на Java, может напрямую работать с памятью, что в свою очередь может привести к известным проблемам связанными с доступом за пределы выделенной памяти. Это всем известные и всевозможные переполнения буферов, use-after-ftee и прочие проблемы. Подобные проблемы могут быть обнаружены с помощью инструментов, которые называются runtime memory checkers. Одним из таких инструментов является AddressSanitizer. И теперь стало гораздо легче использовать AddressSanitizer вместе с OpenJDK.

English version is also available.

Запуск Java вместе с AddressSanitizer

Читать далее

LDAP-инъекции

Каждый знает про SQL-инъекции (SQL injection). Это как знаменитость в мире ИБ. Но кроме них еще существует множество других разновидностей инъекций, которые могут лишь позавидовать популярности SQL-инъекций. И это не совсем справедливо. Устраним же эту несправедливость и поговорим о LDAP-инъекциях (LDAP injection).

English version is here.

LDAP injections

Читать далее

Java и свет в конце DNS туннеля

Часто компании имеют свою внутреннюю сеть, которая подключена к интернету через маршрутизатор (или роутер, router). Обычно на таком маршрутизаторе работает firewall, который может фильтровать сетевой трафик. Бывает, что компания не хочет, чтобы компьютеры (и прочие устройства) из внутренней сети имели доступ к интернету. Это может уменьшить вероятность просачивания важной, секретной и не очень информации в интернет. Или начальство просто не хочет, чтобы работники сидели в их любимых социальных сетях в рабочее время. В таком случает firewall может быть настроен на блокирование большинства TCP/UDP соединений с интернетом. “DNS tunneling” может помочь при обходе такого firewall’а при условии, что он пропускает запросы к DNS серверам в интернете.

Вообще существует множество инструментов, которые позволяют реализовать такой DNS-туннель. Но здесь речь пойдет о том, как это сделать с одной лишь Java без использования каких-либо дополнительных библиотек.

(English version – DNS tunneling with Java)

DNS туннель и Java

Читать далее