Eu trabalho como pentester, ensinar aqui Ă© meio complicado, mas vou tentar dizer o basico e voce pesquisa o resto, tem que saber programacao python, c++ ou js para fazer o script para modificar o "response header" do json que voce vai pegar com um interceptador de tráfego de internet com o proxy, eu aconselho o burb suite (Ă© pago // pesquise mais sobre para aprender) ou o mitmproxy (Ă© grátis mas Ă© apenas para http e https // pesquise mais sobre para aprender), quando voce aprender a usar o log deles, voce pega o request correspondente da api (ela que vai ser o mediador entre as aplicações de qualquer site e tambem dos repositĂłrios onde ficam os sources, no caso nĂłs queremos as mĂdias) depois que voce pegar o resquest da api, voce vai no response, baixa em .bin (vai estar em formato binário), abre em um editor de cĂłdigo, usa uma linguagem de programação que voce saiba, mude as credenciais do json file que voce interceptou da api do site.
Exemplo:
*Vamos supor que o json que eu interceptei foi esse.
var response = [{"id":3663101,"lstImeis"}]:[{"id":3665337,"lstImeis":[{"number":"10"}]
[{"Preview":"hide"}]
[{"Show":"false"}]
var result = response.reduce(function(res, obj) {
var temp = obj.lstImeis.map(function(o) {
return Object.assign({}, o, {id: obj.id, number10: obj.number10});
});
return res.concat(temp);
},[])
var output = {data: result};
console.log(JSON.stringify(output));
*O exemplo de pegar o video, o response header do json vai vai esta tudo false, hide, 0, etc, voce troca para true, show ou 1, onde o 1 Ă© o sudo (SuperUser Do) na maioria dos casos de credencial de api, ficando assim
var response = [{"id":3663101,"lstImeis"}]:[{"id":3665337,"lstImeis":[{"number":"10"}]
[{"Preview":"show"}]
[{"Show":"true"}]
var result = response.reduce(function(res, obj) {
var temp = obj.lstImeis.map(function(o) {
return Object.assign({}, o, {id: obj.id, number10: obj.number10});
});
return res.concat(temp);
},[])
Depois de modificar, salva e faz o upload no burp suit, quando ele mandar essa nova respota com json modificado, ele vai mudar as credenciais do site, assim fazendo o bypass do pagamento
Obs1: para funcionar tem que fazer um proxy proprio (exemplo: 192.0.0.0 ou 192.168.0.1) com porta proprio (exemplo: 8080 ou 8081)
Obs2: esse tipo de penetração é ilegal, e qualquer um que modifique o json de uma api pode ser rastreado, caso voce não saiba deixar a sua network anônima, apenas usar um vpn nao adianta, a equipe do site que trabalha com a api vai saber que teve essa modificação, pois vai ficar no log eu sei porque eu tambem trabalho prevenindo esse tipo de ataque, se eu for falar como fazer uma lab de pentest aqui vou ter que escrever uma biblia, de mais é isso, caso nao tenha entendido algum termo, pesquise no google.