
Уязвимость Padding Oracle в RememberMe, позволяющая выполнить удалённый код (RCE)
RememberMe cookie зашифрован с использованием режима AES-128-CBC, что делает его уязвимым для атак Padding Oracle.
Злоумышленник может использовать действительный RememberMe cookie в качестве префикса для атаки Padding Oracle, а затем создать специально сформированный RememberMe для выполнения атаки на десериализацию Java, например SHIRO-550.
Войдите на сайт и получите RememberMe из cookie.
Используйте RememberMe cookie в качестве префикса для атаки Padding Oracle.
Зашифруйте сериализованную полезную нагрузку ysoserial, чтобы создать специально сформированный RememberMe с помощью атаки Padding Oracle.
Отправьте запрос на сайт с новым RememberMe cookie для выполнения атаки на десериализацию.
Злоумышленнику не нужно знать секретный ключ шифрования RememberMe.
1.2.5,
1.2.6,
1.3.0,
1.3.1,
1.3.2,
1.4.0-RC2,
1.4.0,
1.4.1
root@kali:/opt/tomcat/apache-tomcat-8.5.47/webapps/samples-web-1.5.0-SNAPSHOT# cat ./WEB-INF/shiro.ini |grep cipherKey
# We need to set the cipherKey, if you want the rememberMe cookie to work after restarting or on multiple nodes.
securityManager.rememberMeManager.cipherKey = kPH+bIxk5D2deZiIxcaaaA==
./WEB-INF/lib/commons-beanutils-1.9.4.jar
./WEB-INF/lib/commons-codec-1.13.jar
./WEB-INF/lib/commons-collections-3.2.2.jar
./WEB-INF/lib/jcl-over-slf4j-1.7.26.jar
./WEB-INF/lib/log4j-1.2.17.jar
./WEB-INF/lib/shiro-cache-1.5.0-SNAPSHOT.jar
./WEB-INF/lib/shiro-config-core-1.5.0-SNAPSHOT.jar
./WEB-INF/lib/shiro-config-ogdl-1.5.0-SNAPSHOT.jar
./WEB-INF/lib/shiro-core-1.5.0-SNAPSHOT.jar
./WEB-INF/lib/shiro-crypto-cipher-1.5.0-SNAPSHOT.jar
./WEB-INF/lib/shiro-crypto-core-1.5.0-SNAPSHOT.jar
./WEB-INF/lib/shiro-crypto-hash-1.5.0-SNAPSHOT.jar
./WEB-INF/lib/shiro-event-1.5.0-SNAPSHOT.jar
./WEB-INF/lib/shiro-lang-1.5.0-SNAPSHOT.jar
./WEB-INF/lib/shiro-web-1.5.0-SNAPSHOT.jar
./WEB-INF/lib/slf4j-api-1.7.26.jar
./WEB-INF/lib/slf4j-log4j12-1.7.26.jar
./WEB-INF/lib/taglibs-standard-impl-1.2.5.jar
./WEB-INF/lib/taglibs-standard-spec-1.2.5.jar
Воспроизведение уязвимости https://www.anquanke.com/post/id/192819