function modulo_10 returns int (valor_calculo as char):
def var i as int.
def var j as int.
def var k as int.
def var count-num as int.
def var vl-num as int.
def var fator as int.
def var soma as int.
def var divide as int.
def var digito as int.
count-num = length(string(valor_calculo)).
j = count-num.
k = 2.
fator = 0.
soma = 0.
do i = 1 to count-num:
vl-num = int(substring(string(valor_calculo), j, 1)).
fator = k * vl-num.
if length(string(fator), "CHARACTER") = 2 then
soma = soma + int(substring(string(fator), 1, 1)) + int(substring(string(fator), 2, 1)).
else
soma = soma + fator.
if k = 2 then
k = 1.
else
k = k + 1.
j = j - 1.
end.
divide = soma modulo 10.
digito = 10 - divide.
/*Observação: se o dígito for igual a 10, será assumido o valor 0*/
if digito = 10 then
digito = 0.
return digito.
end function.
terça-feira, 29 de dezembro de 2009
Função Modulo 10, para Progress(Datasul), muito usada para calculo de digitos verificadores.
segunda-feira, 21 de dezembro de 2009
Horario de Verão no HP-UX
1) Acrescentar no arquivo /usr/lib/tztab as linhas com as definições das datas para o Brasil:
parametros EX: 0 23 14-20 2 2024-2025 6 BRA3
Caso seja a primeira vez que se está configurando horario de verão no sistema, certificar-se de que a hora atual do sistema está correta em relação a GMT:
Quando não estamos em horario de verão a diferença com relação a GMT (UTC) deve ser -3 horas.
Se estiver diferente disso, seu sistema está com o horario absoluto errado ou com o timezone definido incorretamente (diferente de GMT-3). Isto precisa ser corrigido primeiro.
Se for necessario ajustar o horario absoluto do sistema, usar o comando date.
A sintaxe é:
Caso seja necessario retroagir a data para este ajuste recomendamos que o sistema seja reiniciado (reboot).
2) Altere o arquivo /etc/TIMEZONE para BRA3BDT:
# Brazilian Eastern Standard Time, Brazilian Eastern Daylight Time BRA3BDT
0 1 15-21 10 2008-2024 0 BDT2
0 23 14-20 2 2009-2011 6 BRA3
0 23 25 2 2012 0-6 BRA3
0 23 14-20 2 2013-2014 6 BRA3
0 23 21 2 2015 0-6 BRA3
0 23 14-20 2 2016-2022 6 BRA3
0 23 25 2 2023 0-6 BRA3
0 23 14-20 2 2024-2025 6 BRA3
parametros EX: 0 23 14-20 2 2024-2025 6 BRA3
0 = minuto (0-59)
23 = hora (0-23)
14-20 = dia do mes (1-31)
2 = mes do ano (1-12)
2024-2025 = ano (1970-2038)
6 = dia da semana (domingo = 0)
BRA3 = Time Zone
Caso seja a primeira vez que se está configurando horario de verão no sistema, certificar-se de que a hora atual do sistema está correta em relação a GMT:
# date
Thu Sep 11 09:11:17 BRA 2008
# date -u
Thu Sep 11 12:11:17 UTC 2008
Quando não estamos em horario de verão a diferença com relação a GMT (UTC) deve ser -3 horas.
Se estiver diferente disso, seu sistema está com o horario absoluto errado ou com o timezone definido incorretamente (diferente de GMT-3). Isto precisa ser corrigido primeiro.
Se for necessario ajustar o horario absoluto do sistema, usar o comando date.
A sintaxe é:
# date [-u] [mmddhhmm[[cc]yy]]
Caso seja necessario retroagir a data para este ajuste recomendamos que o sistema seja reiniciado (reboot).
2) Altere o arquivo /etc/TIMEZONE para BRA3BDT:
# TZ=BRA3BDT
# export TZ
Windows XP System Level Privilege Escalation
Escalação de privilégio é o ato de explorar um bug ou falha de projeto em um software para obter acesso aos recursos que normalmente teria sido protegido de uma aplicação ou usuário. O resultado é que a aplicação executa ações com mais privilégios do que o pretendido pelo desenvolvedor do aplicativo ou o administrador do sistema.
Usando um simples comando em uma maquina rodando Windows XP é possível rodar qualquer processo com o usuário system. O nível do usuário system é maior que o do usuário administrador, e possui controle total do sistema operacional e do kernel. Você pode usar a conta guest para exploitar o sistema.
O usuário Local System (system) é diferente do usuário administrador, porque possui controle total sobre o sistema operacional, similar ao root nos sistemas *nix. Muitos processos do sistema operacional roda com o usuário system, e não pode ser fechado pelo usuário administrador, se tentar finalizar o processo como administrador, o resultado será uma mensagem de erro.
Mãos a obra:
No Windows XP clique em Iniciar/Executar, digite cmd.exe e clique em ok, será aberta uma janela do prompt de comando:
Utilize o comando at para agendar uma nova tarefa:
OBS: substitua o horário (12:13) para hora atual + 1 minuto, para a tarefa ser executada no maximo após um minuto.
Caso queira visualizar as tarefas agendadas com o comando at, digite at no prompt:
No horário agendado será aberto um novo prompt de comando (OBS: este novo prompt já é com usuário system) todos os processos iniciados apartir dele será executado como usuário system
Somente para ilustração executei o comando calc (Calculadora do Windows) observe no gerenciador de tarefas que o processo calc.exe esta sendo executado como usuário system
Agora use a sua imaginação e faça o que quiser, por exemplo finalize o processo explorer.exe (processo do Desktop) e no prompt de comando digite explorer, será aberta uma nova área de trabalho com o usuário system, tudo que for aberto apartir dela será executado como system...
be happy... ;)
Usando um simples comando em uma maquina rodando Windows XP é possível rodar qualquer processo com o usuário system. O nível do usuário system é maior que o do usuário administrador, e possui controle total do sistema operacional e do kernel. Você pode usar a conta guest para exploitar o sistema.
O usuário Local System (system) é diferente do usuário administrador, porque possui controle total sobre o sistema operacional, similar ao root nos sistemas *nix. Muitos processos do sistema operacional roda com o usuário system, e não pode ser fechado pelo usuário administrador, se tentar finalizar o processo como administrador, o resultado será uma mensagem de erro.
Mãos a obra:
No Windows XP clique em Iniciar/Executar, digite cmd.exe e clique em ok, será aberta uma janela do prompt de comando:
Utilize o comando at para agendar uma nova tarefa:
at 12:13 /interactive "cmd.exe"
OBS: substitua o horário (12:13) para hora atual + 1 minuto, para a tarefa ser executada no maximo após um minuto.
Caso queira visualizar as tarefas agendadas com o comando at, digite at no prompt:
No horário agendado será aberto um novo prompt de comando (OBS: este novo prompt já é com usuário system) todos os processos iniciados apartir dele será executado como usuário system
Somente para ilustração executei o comando calc (Calculadora do Windows) observe no gerenciador de tarefas que o processo calc.exe esta sendo executado como usuário system
Agora use a sua imaginação e faça o que quiser, por exemplo finalize o processo explorer.exe (processo do Desktop) e no prompt de comando digite explorer, será aberta uma nova área de trabalho com o usuário system, tudo que for aberto apartir dela será executado como system...
be happy... ;)
Assinar:
Postagens (Atom)