Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes with radius queries and streams. Redis has built-in replication, Lua scripting, LRU eviction, transactions and different levels of on-disk persistence, and provides high availability via Redis Sentinel and automatic partitioning with Redis Cluster.
https://redis.io
จากคำกล่าวของทาง Redis เองก็แจ้งว่า Redis เป็นที่เก็บโครงสร้างข้อมูลในหน่วยความจำ ทำให้มีความสามารถในการจัดเก็บค้นหาได้อย่างรวดเร็ว เหมาะสำหรับการทำ cache database หรือ Microservice
แต่ปัญหาที่พบส่วนมากคือ ไม่มีการป้องกันการเข้าถึง Redis server หรือพูดอีกแบบหนึ่งว่าไม่ username และ password ที่ถูกต้องก่อนเข้าถึง server ไม่ว่าจะ Redis จะจัดเก็บข้อมูลในรูปแบบไหนก็แล้วแต่ ถ้าเป็นข้อมูลที่จัดเก็บอยู่เป็นข้อมูลสำคัญ เราจำเป็นต้องมีมาตรการควบคุมไม่ให้ผู้ไม่มีสิทธิ นั้นเข้าถึงได้…

The Redis server running on the remote host is not protected by password authentication. A remote attacker can exploit this to gain unauthorized access to the server.
https://www.tenable.com/plugins/nessus/100634
เราสามารถตรวจสอบช่องโหว่ได้ด้วยตัวเองโดยใช้ โปรแกรม “redis-cli” จากตัวอย่างเราติดตั้งลงบน Kali ดังนี้
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make redis-cli
sudo cp src/redis-cli /usr/local/bin/


เมื่อติดตั้งเสร็จสิ้นเราสามารถใช้คำสั่งเพื่อเชื่อมต่อดังนี้
redis-cli -h [ip หรือ domain name] -p [หมายเลข port]
แล้วคำสั่ง info
